Joining surfaces strongly deforms geometry

Example.3dm (1.2 MB)

Before joining:

After joining:

I don’t really have a clue what exactly causes the geometry to deform so badly. Does anyone know?

change your mesh settings from jagged to smooth

Mesh settings already as smooth as can be.

Also, it seems to be limited to the rendering of the geometry. When I export it to different software it’s visible representation is just as bad, but when actually performing operations the smooth underlying surface seems to be used. Still, I would sleep better when I know what causes this, what the consequences are and how I might be able to prevent this.

Another edit: It seems to be related to the Revolve function. Other functions that would be able to generate this geometry don’t suffer the same deformation. However, using revolve would be preferable, since I do exactly need surfaces of revolution if I want to reliably apply coordinate transformations later on in my workflow.

Strange, when I open that file here then it joins and meshes just fine. Then I opened again and swithced to Rendered and got jaggies when I joined. Then I opened againg and no odd, big, jaggies… I tried again and thought it had to do with the sequence of picking the surfaces, but no… And now I can’t get those jaggies back. So something is going on.
(I am on Rhino 6 by the way)

Try using even finer Mesh settings (Custom option), that should fix the problem. This is just the rendering mesh, the underlying surfaces should be fine!

I’m on Rhino 5 unfortunately. So It’s something that might behave differently between versions. As far as I remember it also sometimes happens to me and sometimes it does not which is exactly why it worries me.

I also did that and it doesn’t seem to help. It is good to know that the underlying mesh is fine, that’s also what my experience is when exporting the geometry to other software packages.

Ok, @wim do you know who to pass rendermesh things to?

In the meantime you can set the rendermesh to custom and go to the detail settings and set everything to “0” but “max distance edge to surface” and set that one to 0.1.

See if that helps. If the file becomes heavy then set the value to a higher one.

Ah yes. That eventually does the trick. Still a bit odd that it only happens with Revolve :thinking:

Yes, well, good meshing of nurbs has been a hot topic for more than a decade and is luckily improved in V6 :slight_smile:

Hello - I guess this is because in this file, the render mesh settings are depending completely on the Density slider - set to 1. What this slider does is make some calculations about what the ‘max distance edge to surface’ distance should be based in part on the bounding box size of the object. When you join the relatively tiny surfaces to the much larger ones, the ‘object’ for those little surfaces is suddenly much much larger, along with its bounding box. So the meshing estimate is reasonable for the object as a whole - Zoom out and it looks correct - but not for the zoomed in view of the little detail.

When the Density balck box works out its guess as to ‘max distance edge to surface’, it then compares this number to any number the user might explicitly set in the detailed controls for this… the smaller number is used for the meshing but zero in ‘max distance edge to surface’ does not count. So, set a small but greater than zero number there and it should look OK. The down side will be that the object as a whole will be vastly over-meshed.

-Pascal