Jump to content
AntoineSfx

Broken geometry after a boolean intersection

Recommended Posts

So it's pretty simple. I have this geometry that I want to send to the slicer (a pre processor for 3d printing)

I don't want to send the whole thing for printing, so I need to intersect the geo with a box.

I don't really care about the topology after this point if this can help; there is this error: 
Warning Nonmanifold edges in solid A: p1-2 p4-6 p2-3 p5-6 p2-0 

Is there a way to fix this upstream or downstream from this boolean op ? I'm pretty sure that the incoming main geometry is clean.

 

brokenBoolean.hipnc

Share this post


Link to post
Share on other sites
Posted (edited)

Use MeshLab or Free MAterialise for that stuff I think, here it's me approach( Save in .stl)
No errors outputting like .STL so it works

 

 

brokenBooleanFix.hipnc

nor.jpg

Edited by Librarian

Share this post


Link to post
Share on other sites
Posted (edited)

nah...look carefully near the top, one of the grille holes is incorrectly filled up.

the orig geo is NOT clean IMO, (don't think I'm rude but I would say it's a complete mess).

here's what a clean result should look like, on the left boolean, everywhere is solid, where grille holes are are STILL holes, while the right boolean has "holes" where the cut is...and yet some grille holes are incorrectly filled in.

test_brokenBoolean.hipnc

Edited by Noobini

Share this post


Link to post
Share on other sites

exact @Noobini@AntoineSfx use programs( Free Meshlab , MAterialise, and other ) for automatically fix errors and flipped normals common problems with 3d printing..I think

Share this post


Link to post
Share on other sites
30 minutes ago, Noobini said:

nah...look carefully near the top, one of the grille holes is incorrectly filled up.

the orig geo is NOT clean IMO, (don't think I'm rude but I would say it's a complete mess).

here's what a clean result should look like, on the left boolean, everywhere is solid, where grille holes are are STILL holes, while the right boolean has "holes" where the cut is...and yet some grille holes are incorrectly filled in.

test_brokenBoolean.hipnc

3D printing was just a pretense.. What I needed to know was how to spot a bad geometry beforehand, or how to fix it if it's problematic. I will upload the full geometry later.

Share this post


Link to post
Share on other sites

pretty hard to miss this...but I usually go into Topology tab and check manifold attribs

(coz you know Bool, always complains about manifolds)

doc.jpg

Share this post


Link to post
Share on other sites

ok, so I think I found the root cause.

Considering the large amount of points sharing two coordinates, because the boxes are copied on a grid, this setup creates shapes that are hard on the triangulation algorithm that happens in the boolean SOP and elsewhere ( possibly just in display )

What I think happens is this: at some point the algorithm has to decide whether a point is left or right from a line to decide which triangles to build. In this case, as a lot of points share the same coordinates, this point in the code has a lot of opportunities to fail. 

See this on page 4: https://members.loria.fr/MTeillaud/CGAL/robustness.pdf each square represents a bit of a float number, you can see that some fail the orientation test because of IEEE754

How I solved it: I added a slight jitter to the grid so that everything is distributed randomly enough, so that the triangulation algorithm doesn't have to deal with lots of points that are too closely aligned.

crate2.png

Share this post


Link to post
Share on other sites

interesting...so what you thought was clean...didn't work...to make it work...you had to dirty it up a bit...:wacko:

does it leave holes where the  cuts are ? or its solid ALL over, ie. go to side or front view a bit.

Share this post


Link to post
Share on other sites
9 hours ago, Noobini said:

interesting...so what you thought was clean...didn't work...to make it work...you had to dirty it up a bit...:wacko:

does it leave holes where the  cuts are ? or its solid ALL over, ie. go to side or front view a bit.

this is actually solid all over, and flawless. Funny thing is, if you snap the points to a nice 1e-4 grid, the problem pops up instantly after the fuse.

Also, it is really data dependent. For example even at  a given jitter scale, which seemingly moves the points around so that they're not too aligned: changing the jitter seed, you can often find one specific value that will trick the triangulation into failing. Making this solution unsuitable for a dynamic setup or something.

Also, I found that often the problematic polygon is often so dirty that you can't even Hole SOP / un-bridge it properly if you blast it apart for examination. I'm not sure if it's related to this problem though

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×