I came through this problem and I can’t figure out what’s wrong with the input.
In the attached file I try to make a boolean difference, subtracting the blue items from the red one.
I tried using Mesh.CreateBooleanDifference in my plugin, I tried both subtracting single blue items and a list of the two blue items.
Looks like the first difference succeeds while the second is completely missed.
I tried manually on Rhino as well getting the same result.
I think the problem lies in the input but all the objects look fine to me, correct normals etc.
Can anybody please help me out with this ?
Mesh booleans are notoriously difficult to work if you have triangles in plane. Generally, you want to have two distinct bodies before conducting an operation. At the moment your two blue meshes have parallel base and top planes… but there is a way to workaround this.
Firstly, scale one of your blue meshes so that the top and bottom planes do not align with the other. Then boolean union them. Then chop the base of this new thing (5 units down as per your 3dm file). Then finally, use this to subtract with when conducting the mesh boolean difference. There might be other elaborate ways to do the same thing as this, but generally avoiding these difficult in-plane mesh triangle operations is something to strive for.
since you’ve provided a good workaround for my problem yesterday, I try my luck, maybe you’ve a good hint for this too… I’m trying to cut my teeth on mesh geometries.
This time I’m trying to create a union of the two on the attached file, but the result is pretty bizarre…
Anyway, I tried just redrawing the top curves and extruding to make capped solids (a). Solid boolean worked fine (b). Then I tried by meshing these solids first (c ) and using the mesh boolean union which when offset, also worked fine (d).
Is there something wrong with these parameters in your opinion?
My problem is that I’m working with an iteration on boolean unions, so I try to boolean union of a freshly meshed extrusion with the result of a previous boolean meshing and so on.
I wonder if the nasty mesh comes from a previous boolean union operation (the tallest one in my example).
If so, it would be a problem…
yes it’s an option, I’ll surely try rebuilding the curves… what we’re trying to do is finding a way of simulating some material removal, progressively subtracting shapes from a base stock shape… maybe this means pushing Rhino a bit too far… we don’t know if anyone already tried this…