The last release of Rhino Serengeti WIP contains a new command, _MeshFromLines. This has been rewritten and ported over to RhinoCommon from its native place, Weaverbird. It can help when recreating meshes (especially organic ones) that will later be used for subD.
In fact, the _MeshFromLines command works on groups of lines and attempts to reconstructs a mesh from its wiresframe. Lines need to intersect at ends and overall form polygons. Lines need not to be derived from a mesh in the first place, but they need to “logically” form a mesh.
MaxFaceValence can be used to restrict the number of polygons sides in the recursive research: it means, “only search polygons with a number of sides less or equal to…”. If you know that your mesh is triangular, then set the option to 3.
mesh_from_lines_testbed.3dm (3.4 MB)
It is also useful when lots of boring changes need to be done to connectivity before going to subD.
Rhino Logo 2.3dm (5.2 MB)
I also did some sort of extreme test here, using a model of a Bugatti Veyron.
You will notice that, occasionally, the resulting mesh has some manifold edges. I hope to be able to improve this. Also, Rhino is not always able to unify mesh normals using _UnifyMeshNormals. We will be glad to get feedback and samples where geometry needs to be improved. Especially real-world examples help.
This is completely new and untested code, so it could contain bugs, even some that were not present in the original code in Weaverbird.
I appreaciate any feedback regarding this command, samples, or suggestions for improvement*
for Robert McNeel & Associates
*here are a few things I know would fit well:
- accepting and logically “exploding” polylines automatically within the command
- intersecting all lines with all lines to have them always meet at ends
- logically "join"ing lines that are collinear within some tolerance into their larger lines, thus decreasing the singular face valence