One single closed polysurface for CNC machine

Lets say I turn this drawing into 3D model using basically Sweep 2 Rails/cross sections. What is the way to join or make them all one single closed polysurface for CNC machining.

Boolean Union ?

wow, didn’t even think about that. Thank you very much.

Most likely those will be surfaces/polysurfaces but not necessarily closed and so BooleanUnion is unlikely to work. If everything is within tolerance you should be able to join all your sweeps/lofts/etc. into one single polysurface with no gaps. With something this complex, it’s hard to make sure that there no naked edges anywhere, but this may not cause problems - read on.

One advantage of CNC machining over something like 3D printing is that you do not need closed watertight volumes - a simple surface model with no volume will do. In principle the surfaces don’t even need to be joined, if there are any tiny gaps between the surfaces, the cutter won’t fall into them anyway. Always run a simulation… :grinning:

1 Like

I just tried Boolean Union but it didn’t work. I also read somewhere in this forum that it need not to be a closed surface per se for CNC machining. Thank you very much. I will try the way you just pointed out.

I have done similar projects with nurbs, and my suggestion is to match surface edges as you go, checking for naked edges on every joint as you create them. I have managed to machine polysurfaces with naked edges by breaking them into individual surfaces but the results were inconsistent. This YouTube series by @sgreenawalt has been immensely helpful. I think it should be part of Rhino’s standard tutorial series.

Another approach would be to use SubD instead of nurbs. If I wanted to do much of this type of work I think this would be much faster.

1 Like

Thanks for the shout out! I actually think the better route for shapes like this would be Subd - it’s certainly doable with classic NURBS, but I think the Subd route would be the better option. It’ll be a bit fiddly either way you go, but with Subd it’ll be more editable and watertight by definition.


1 Like

Only if it is acceptable for the curvature to be zero at sharp corners and normal to edges.

1 Like

You beat me by 2 min…

Check out this SubD work by @PaulS


Lots of Rhino SubD’s here:


Thank you very much. I am currently watching the tutorial series from the start. It seems to be promising.

Greetings. I’m not inclined to believe that SubD will give a boost in speed. Recently, I have paid a lot of attention to the study of working with SubD. Before, it seemed to me that I was missing something or simply did not understand this function. And recently I had the opportunity to delve into the work with SubD. I was ordered to stylize an Orthodox icon for further CNC processing. I will not go into details, but I did not achieve an increase in speed. This did not happen even when modeling organics and draperies, which I really counted on. Below I will give an example where I completely stylized the “Dancer” panel in NURBS. Objectively understanding my level of SubD knowledge (I repeat, perhaps I am still a beginner and do not feel the advantages of SubD), I am inclined to believe that with NURBS I did this work many times faster than with SubD. In the moderation of classical threads, for me, there will definitely not be a transition from NURBS. I would not want to seem like a retrograde, I am ready to accept any improvements with open arms, but SabD, apparently, is not my case.

Upd: And yes, you don’t need a closed polysurface to work with CNC. Sometimes it is even worse to have surfaces “invisible” for the cutter in the model - it increases the file size.


I just started exploring subD recently. Also, I am relatively new to the Rhino Software. Read a lot about not needing closed polysurface for CNC. If it is possible, can i get to inspect some models that you have used for CNC machining? Also would it be logical to make some rough models first and unfolding them using UV (under project tool) and then adding details on the surface and again flow along surface?

With pleasure I will show an example of working with open surfaces. Below is an example of my early work where I didn’t spend time closing polysurfaces or vertical surfaces. This all ends up adding “garbage” to the file that we send, for example, to ArtCam. And below there is a screen from Rhino with completely open surfaces, and even lower - with a file already inserted into ArtCam for processing. As you can see, everything closes automatically.

iDec4.3dm (11.0 MB)


Thank you very much andrew. This will help me a lot. This type of file is exactly what i was looking for. Really grateful!

1 Like

I am using RhinoCam and the only way I would know to do this is by individual surfaces or healing all the naked edges. I think Artcam is gone though…

In RhinoCam it works in exactly the same way. I chose ArtCam for the demo because it demonstrates the lack of need for closed surfaces. And in RhinoCam, for this I had to make a simulation. So, voila, the same open surfaces processed in Rhino.

1 Like

Would you be willing to show me the control geometry definition you used? This is the window that I am wondering how to populate to get a cutter to follow the surfaces when there are naked edges.

You just need to draw a closed bounding curve or polyline and select it as the processing region. Then the cutter will process the entire region inside.