Boolean Difference Breps

Hello everybody,

I want to bool the different between these to preps but it is not working. Could someone explain me why and help me ?
I need the form to be 3D printed tomorrow.

I referenced and inserted the data (165.0 KB)

Your “Brep to trim out” is not a “Closed Brep”.

1 Like

I tried to close it but I couldn’t close is. Did you have a solution ?

1 Like

The trim out geometry is comprised of both trimmed and untrimmed surfaces. No doubt this is due to the way you created the shape. My guess is your problem has to do with the way trimmed surfaces are handled by Rhino internally. In Rhino a trimmed surface retains it’s original, untrimmed shape, but displays only the trimmed part. So when you Boolean such a shape with anything else the Boolean routine gets confused because the geometry is actually not what it appears to be on screen.

To fix this you will probably need to shrink the trimmed surfaces to what they appear like on screen. I believe there are some shrink routines in some of the Rhino add-ons, but I don’t know which ones they are. If you can do this your Brep should show as closed, and the Boolean operations should work.

fusion.step (173.4 KB)
Explode and re-join everything, it will become solid.

1 Like

Amazing - but why does this work? And does it really work? This method raises more questions…

  1. Although the resulting Brep looks pretty good (see #2), Rhino still says it is an Open Brep comprised of trimmed and untrimmed surfaces:

Most slicers for 3D printing will flag open Breps as having errors.

  1. The resulting SDiff looks pretty good, except it’s got a zero-thickness surface at 2 corners. I expect this is just a mistake, but it won’t print properly as-is:


  1. What is a Model Brep?

  2. Why does Sdiff work with geometry comprised of Model Breps (whatever they are) but not with Trimmed surfaces?

1 Like

thanks everybody. for the help. I adjusted some things for the print and will see what happens.

I don’t know, I tried that and worked.
I guess that is somehow related to tolerance. Maybe his tolerance is tighter than mine (0.001).
In this case Fusion gives the same result as Rhino(v8), also gives redundant surfaces sticking to the boundaries.

booleans only work if solid in GH?