This article is a continuation of the previous article. Solid-state topography with layers. And it parses the more utilitarian problem of applying a solid-state algorithm to topography.

layers-11.gif

🖇️Script and test file (Revit 2022 and Dynamo 2.0.3) :

topography_solid_layers.rar

Untitled

Thank you!

I want to thank Prof. Peter Petschek! Thank you for providing models for testing, helping to articulate where the script might be useful, and allowing me to present this solution to students from **Ostschweizer Fachhochschule | OST.** It was a very interesting experience, and it gave great motivation to continue researching the problem!

Also, thank you to everyone who tested the script and wrote their tips and comments! ☺️

I think I'll tell my friends now that I taught in Switzerland ;)

I think I'll tell my friends now that I taught in Switzerland ;)

What has changed?

So, after a lot of discussion in the comments on LinkedIn, we found out that this algorithm can't be applied to geology. But will be great for creating layers in the design of new road surfaces and pavements!

The result of the script

The result of the script

1. Mesh triangle sorting and clustering algorithm

In a previous article, I suggested out that the speed and correctness of the attachment of solids depend on the order of their attachment and the size of the list of solids to be joined. I suggested that the efficiency of joining depends on how the solids are grouped and sorted. I also assumed that the most efficient way of adding solids would be one in which the solids are joined to each other in sequence. Neighbor to neighbor.

🤷‍♂️ The theory did not work out. It turned out that the size of the group to be joined is much more important to the script than the sorting order. Nevertheless, I want to share this algorithm separately, because this principle is the start of the mesh-unfolding algorithm. And the same method can also be used in the algorithm for automatically finding rooms in a project

Read more: Trees and clusters

2. Ability to create your own set of materials

You can create or use existing materials simply by writing their name in the Code Block.

How it works:

When you create a new family, assign some material to a solid, and load it into the project, Revit finds a material with the same name in the project and replaces the family material with the project material. If you already have all the materials you want in your pattern, just write their names and thicknesses in this menu. If there are no materials with that name in the project, after running the script you will have new materials with those names.