Meshbooleandifference fail

meshbooleandifference.3dm (19.8 MB)

I am having issues with meshbooleandifference. I have tried multiple times but it’s not working. I don’t know what could be wrong. Can you advise me on how to resolve this issue?

Have you tried in rhino WIP? I believe there’s been done some work on mesh boolean processing

You may want to use QuadRemesh on the bottom mesh first. The original input mesh isn’t particularly nice - it has some quite complex ngons that aren’t helping the booleaning.

quad remeshing has some issues finding some of the hard edge, but you’ll find that the quadremeshed geometry otherwise gives better boolean results in this case.

I see some weird behavior by Rhino that I don’t know if it is a bug or something expected, but trying to show all edges doesn’t show all edges highlighted:

@piac any idea here?

Not sure if my result is what you are expecting to see.

The smaller mesh can be split with the larger mesh.

I deleted all faces which go through the smaller mesh.

Then I built one face as a bridge between the two meshes. FillMeshhole did the rest.

The result had 5 non-manifold edges which I deleted manually.

meshbooleandifference.3dm (19.9 MB)

Ehm, OK. I spent some time understanding this. The lower mesh is really not a great example of mesh geometry. However, with Rhino 7 and even better with Rhino WIP, this can be done. Rhino WIP is currently slow at performing this, but creates relatively good geometry.

image

Especially degenerate mesh faces and intersecting pairs are not helping any logical operation on the mesh. This is because some areas have faces that overlap one another and, by fractional distances, cut into each other.

I used MeshSplit with PermitSplittingWithEachOther=Yes, in Rhino 7.
Directly MeshBooleanDifference in Rhino WIP. This is next week’s WIP. MeshSplit with the above option has a bug in RhinoWIP that I’m trying to tackle asap. Sorry about this one guys.

meshbooleandifference-WIP.zip (1.8 MB)
meshbooleandifference-7.zip (2.1 MB)

1 Like

Can you tell me how the bottom mesh was created? There are a lot of faces that are overlapped and quite long. Is that bottom solid made in Rhino or imported?

Perhaps with some help we can help clean it up?

With a weld and quadremesh, I got very close to a fix: