Boolean Difference keeps failing!

Ring infinity.3dm (1.5 MB)
I want to boolean difference the ring with these objects but it keeps failing.
How can I fix it?

These geometries have self intersections.

1 Like

Cleanest way in my opinion is to rebuild the geometry you want to subtract directly on the ring.

I created a curve with 12 divisions and moved the control points to approximate your shape. It’s just a quick draft to illustrate the procedure.

Then I created a rectangle around curve and swept it with sweep1.

For the tubular shape I took the same 12 point curve but rotated it by 60°, then made a solid out of it with the pipe command.

Ring infinity.3dm (1.8 MB)

Thanks for your time but I can’t seem to be able to create that 12 point curve. Could u show me how?

Hello - make a circle and Rebuild to 12 points, degree 3, is one way.


1 Like

I’m new to the program so sorry for asking dumb questions, I did as u told me so, but how can I make the curve into the infinity object i want. I tried cutting the circle in half and mirror the on half array and join. After that i swept a rectangle curve and capped it. And when i flowed it along the surface and boolean difference it failed again.

Hello - did you see Martin’s file above? You can Pipe one curve to make the round section and Sweep1 a square on the other to make the square section. If you flow a capped straight object the caps from the two ends will meet - that leaves a difficult to impossible situation at that location for a Boolean.