When working in Rhino, I’m able to turn on a mesh’s vertices, select a patch of them, run the ‘smooth’ command, and that part of the mesh smooths out nicely.
I’m trying to figure out how to do this programetically. I was hoping the V6 mesh.smooth function would do this but looks like it doesn’t accept specific vertices of a mesh. Or am I missing something there?
So it looks like I will have to try to script it. I can turn on a mesh’s vertices but I’m not sure how to select the vertices by their index (I’m going to be picking vertices that touch unusually long edge lengths). Any suggestions?
I don’t see anything exposed in RhinoCommon that would help. But I dont’ think it’s difficult to put a override together that takes a list of vertices to process. I’ve added this to the pile.
Mesh smooth has issues when mesh vertices are coincident. For instance I would like to smooth a mesh that is joined of several meshes. Is the only way to weld a mesh or it is possible fix this to work with coincident vertices?
Hi @Petras_Vestartas are you saying that when you smooth a mesh with non-welded coincident vertices that those vertices separate? This is by design; you’ll need to make sure the mesh is welded before calling Smooth.
If this is by design, why this happens, I have simple case of 4 surfaces with equal division.
Some of coincident faces are treated as in one location others in separate.
I do get that there might occur zero tolerance thing when vertices differ by 0.00001.
But is there any possibility to smooth mesh so that I can have coincident vertices (I want to keep indexing)?
So the question I have is it possible to weld a mesh in that manner, that I will have the same number of vertices and mesh smooth would work nicely as 2nd picture?