Catmull-Clark and Delaunay Invalid Mesh

Hello all,

I have a surface and I divided it into diamonds by using the lunchbox component. Then I’ve created Delaunay meshes from the diamonds, and I would like to join these with the triangles around the edges. But when I try to convert the triangle surfaces into meshes, the end result is always “Invalid Meshes”, and this is failing the mesh-join, hence the catmull-clark softening. Any ideas on what’s causing the issue?


Dela.gh (16.2 KB)

Hello
Rhino 6 is more stringent with mesh. The mesh component you use certainly made quads with 2 coincidents points. That’s not good. So it becames invalid meshes.
Here a more robust solution


Dela.gh (15.7 KB)

1 Like

I’ve tried the construct mesh component as well, rather than converting the surface into a mesh, but did not change the indexes in the faces so it didn’t work for me. For future reference, why do you have 0;1;2? Do they represent each corner of the triangle?

And, thank you very much for the solution, really appreciate it!

Yes it is the number of vertex. It is simple here as the list of point contains just 3 values. It shows also the utility of data tree which are sort of list of list.

Easy fix for invalid mesh from Delaunay mesh: feed points to Delaunay Edges component, you’ll get the edges, then in Weaverbird, feed those edges to Mesh from Lines component. you’ll get a valid mesh.