Still can't get Boolean difference to work!

Continuing the discussion from Understanding why this Boolean Difference won’t work:

I am still having big problems with this. I have a small section of a wing that I am trying to subtract from a solid block, to leave a negative mould shape. I want to use this as a test piece to CNC mill, but I can’t get it to subtract. As per the previous thread, this is a regular problem and it’s going to cause me problems if I can’t find a way around it.

Using “What” it seems that the wing is a valid solid. So is the mould. No naked edges to be found. But the difference always fails. I’ve read a Rhino Wiki on solving the problem and I resorted to using Boolean Intersection, then Boolean split, but the split fails. You can see on the separate layer that I tried using a simple box as the mould, but it still won’t subtract.

Can anyone please help?? I really need to work out what the problem is that keeps happening because this is the most important thing that I want to be able to do (create negative moulds).

AndrewAngry Bird stab chop.3dm (1.2 MB)

Accuracy is giving trouble, I don’t know why.

[WORKAROUND] Move up your wing 0.001 and it works.

WingMolds.3dm (1.5 MB)

Peter, thanks very much for that. Being a novice I don’t really understand the issues surrounding accuracy, and why moving it would help. Can you or anyone else shed any light on it - aiming to help me to find ways to prevent this happening?

Since I’m working with wing aerofoils I don’t like the idea of moving it from being perfectly centred on the Z axis, but I guess .001 is too small to have any effect! But I would prefer to find a method that avoids it.

Thanks very very much,

I totally agree it would be nicest to not have to move it! And I would love someone to point out the exact reason for this problem

When Booleans fail, the first thing to do is run Intersect and find if there is a problem with the intersection. In this case, Intersect gives you 3 curves instead of one complete loop - there is a small segment in there which overlaps the others which marks the trouble spot.

Your file tolerance is to low for my taste with that size object, I would raise it to .001. If you do that and re-run intersect, you will get one intersection curve, but it will be open and there is still the overlap in the same area. Rhino is having trouble finding the intersection there, because there is a tangent condition with wingtip edge. That’s why moving it up a small amount helps, it moves the seam away from the intersection.

Your object is also not really “centered on Z”, it is too low by 0.2mm. This will result in an undercut at the wingtip (look at it in the Front view in wireframe)… Raising the wing it by that amount will allow the Boolean difference to work perfectly.

If for some reason you want to keep the current position, then you have to do some manual work. Run intersect and then “clean up” the resulting intersection curve so that it is a closed loop. That means exploding it and finding the overlapping segments and eliminating them, then re-joining. Once that is done, Split both the box and the wing with the curve, delete the unwanted parts then join the split wing with the split box. You should get a closed polysurface. Example attached…



AB-ManualBoolean.3dm (1.6 MB)

Here is a Wiki page on tolerances and the role they play in Rhino modeling
Here is a Wiki page on Boolean operations and what to do if they fail


Thank you so much Helvetosaur! I can only wish that one day I can understand how you did that so fast, and what you actually did …

I will have to do some research as I don’t yet understand the intersect function, then hopefully I can go back to the file and work out what you mean.

The wing is supposed to be centred on Z and I must have moved something without realizing!
Thanks again, wife calling me for dinner


The intersect is a good tip, thanks!

This is all covered in the FAQ about what to do when Booleans fail.
There are several reasons. Your’s is pretty common, when Rhino can’t determine a clean intersection curve.
Keep in mind Rhino is a surface modeler. You are intersecting surfaces.
Here’s a link to the FAQ page.
Something tells me you will be doing some reading to get your head around what’s going on in NURBS surface modeling.

Mitch, John, Peter, thanks very much for the help. You are right, I really need to understand the principles of Nurbs modelling … in fact 3D modelling generally, better. I’ve come from a zero knowledge base.

This all started because of a deficiency in options for myself and fellow aeromodellers to have our successful own-design projects turned into accurate CNC moulds. Frustration led to me purchasing my own, quite decent large CNC mill to learn the skills and hopefully provide an outlet for our creativity. So at the age of 52, with no previous CAD experience at all, I downloaded the Rhino OSX program and bit by bit over months, worked my way through the 2 supplied tutorials, because the consensus was that Rhino is the best, most accurate program for drawing curvy aerodynamic shapes. It’s been a huge learning curve but I am really on my L plates! I’ve reached a point where I can draw up a wing shape but modelling a particular fuselage shape is still beyond me.

Now that the machine has arrived in the last week I’m also learning RhinoCam, Mach3 and some basic machining skills … all this in between work and family! (and flying/ building planes).

I’ll check out the FAQ’s but can you recommend something more general to give me a ground-up working knowledge of Nurbs modelling?

And Merry Christmas to you all too.


IMHO, the biggest drawback is you trying to learn something new to you, on a pre-release, undocumented, incomplete tool.

If you have access to a Windows computer, you would be far better off going through the Rhino for Windows User’s Guide tutorials.
It’s linked to the Getting Started page, on the Support page, on the Rhino Web site.

I have now purchased Rhino for Windows because I had to get a Windows machine to run a CAM program anyway. It’s just arrived and I haven’t installed it yet. I did work through the 2 tutorials and models which you can get with the OSX WIP download and although there are differences, they’re mainly in the interface and the functions all seem to work well. But I’ll check out the Getting Started tutorial - just downloaded it.

There are also Rhino tutorials on and amongst others.