Why does boolean difference fail on this?

No naked edges, no non manifold.
what else to check for ?

why does Boolean difference fail on this. in V5.

red is cutter.

I just love Boolean Difference…when it works , else aaaaagh !
Boolean Difference fail ring.3dm (1.0 MB)



if you run intersect on those two objects, you’ll notice this isn’t an unambiguous intersection.

btw are marked surfaces intentionally not planar?

Probably because of all the coincident edges and coincident faces.

Trim and join will work if you get rid of the coincident faces on both ends of the torus.

Then select the red and black and run trim. clicking on the parts to delete.
As it turns out you have to run trim twice to get all the red part cut.
So after you trim the red and black once stop and start trim again. This time remove the rest of the red that you want cut away (using the black as cutter). After trimming then join. Then run the cap command to make it a closed solid.
ringx.3dm (900.7 KB)

intersection has yellow lines which to me seem to suggest it should work, intersecting as they do with all surfaces.
so not sure what you refer to.

should red not intersect ?

and yes those surfaces are slightly curved as shoild be.


If you want Boolean to work, you should at least get unambiguous closed loops. With things like these, use Trim instead as explained by Jim

If I run V7 and select the grey then boolean difference the red from it it works straight off the bat.

So its V5 acting up.

But dare I do that in V7 then export it as V5 or will it cause issues within V5 that didnt like it as it was. I dont want to cause a ‘gremlin’ in what is a massive project and get unknown issues later on.

My gut feeling says it might, as its been a hell of a ride as it is, and I cannot go ’ force feeding’ it and risking anything. Anyone can say ok but I am the poor sod with a messed up file and 9 weeks of working until 1am messed up, so will shy away from wrecking it as I am about to ‘chest the tape’.


It seems to work in Rhino 6 and 7, not in 8

RH-78426 Boolean Difference fails in Rhino 5 and 8, not in 6 and 7

Further problems and a fix.
I decided I needed a full cut as its less hassle and looks better.
A full depth ‘cutter ring’ worked. :grinning:
I then had need to make a shelf at ‘A’, and so then needed a channel in that shelf to complete the illusion of a working ‘round table’, and the ring failed as boolean union.
I then made a segment of the ring and it worked, :grinning:

so why is that ?

to then make the rest of the gulley the same depth as that , I added back the ring and lowered it to match to the new gulley at ‘A’, and boolean difference failed. :rage:

It also fails in V7.

why will it not just cut a few thou lower into the existing cut it had made earlier ?

surely if a cutter that worked is lowered down a few though it should cut again ?

Is this a fundamental failing, does it not like ‘rubbing sides’ with a surface ?

Boolean Difference part ring works.3dm (5.2 MB)



you could add some boxes, Union these with the base, Then MergeAllCoplanarfaces and then make the new cutout

Boolean Difference part ring works_01.3dm (1.0 MB)