Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
"Boolean ... did not regenearete properly" - what's wrong with my model, how to debug?
glib_kotelnytskyy
Member Posts: 23 ✭
Hi.
I've created a model of a table, now I want to simulate it. As I have lots of connections - I decided to have a single solid instead.
But when I do Boolean - Union - I get "Boolean operation failed to return a valid part."
Where to look at, what's wrong with my model?
here's my project https://cad.onshape.com/documents/d00ceaba15e3ae5795e20cc8/w/ae8f127e4624154d6ac645ae/e/df3660a165963528ba859614
the model in question is in Part studio "N"
I've created a model of a table, now I want to simulate it. As I have lots of connections - I decided to have a single solid instead.
But when I do Boolean - Union - I get "Boolean operation failed to return a valid part."
Where to look at, what's wrong with my model?
here's my project https://cad.onshape.com/documents/d00ceaba15e3ae5795e20cc8/w/ae8f127e4624154d6ac645ae/e/df3660a165963528ba859614
the model in question is in Part studio "N"
Tagged:
0
Best Answer
-
lemon1324 Member, Developers Posts: 225 EDUThis is my custom feature, and as far as I can tell that specific issue is actually a corner case of Delete Face itself; as seen in this document, delete face fails whenever the healed intersection coincides with the deleted face, which is how the corner overcuts are calculated. I can throw in a small tolerance (e.g. 0.1% of the overcut diameter or something) there to make sure that this doesn't happen if people really need to delete those faces later, but I don't know that that's best practice as that's an obscured magic number. I'd expect delete faces to work in either case.
As far as this specific document: the boolean issues are 1) because each overcut therefore creates zero-thickness geometry when attempting to union, and 2) because the plates are at an angle, so that once the joint creates tabs and removes intersections, the remaining contacts are edge-on-face contacts creating zero-thickness geometry:
Both of those cases I could maybe look into automatically detecting and fixing, but they are side effects of the joint working exactly as intended, so I don't know if it's a good idea to do that.
Arul Suresh
PhD, Mechanical Engineering, Stanford University5
Answers
I do not see the option to change permissions to allow looking into features
When I do boolean intersect of two individual parts - I get few parts at connection points, as expected. But union still doesn't work.
The most common reasons for a boolean to 'fail'
1) The parts don't touch (this problem only exists in other CAD systems - Onshape handles this easily )
2) Knife edges - this is where two bodies touch at a common (or single) edge (also scientifically referred to as 'non-manifold topology') - you nearly have this in many places in your table model - which leads to cause #3
3) Small edges - booleans (in all cad systems) start to have problems with very small edges - again you have a boat load of edges in the 0.1mm range or less if you do a boolean intersect (which does work).
Advice?
Well, this isn't something you would normally boolean, BUT;
You could suppress the cut-outs / reliefs, and i am sure that it would go together very nicely.
And I need to have the kerf to know if they are stressed out.
I've tried increasing the intersection to 1mm, but with no result.
1) I tried to use the 'delete face' direct editing tool to remove the reliefs - failed every time. This should be a warning that the body has 'problems' - i would need access to deeper diagnostic tools, but this is a big warning sign and probably explains the boolean problem.
2) I suppressed the laser cuts, and of course it booleans perfectly.
Are you getting any errors from your custom feature?
I would suggest posting this in the FeatureScript forum (with the code) - use just one or two parts and cite the case of not being able to use 'delete face' on the reliefs. Maybe one of the code-wizzes there can spot the problem.
Bottom line - i think it's your feature!
(sorry )
As far as this specific document: the boolean issues are 1) because each overcut therefore creates zero-thickness geometry when attempting to union, and 2) because the plates are at an angle, so that once the joint creates tabs and removes intersections, the remaining contacts are edge-on-face contacts creating zero-thickness geometry:
Both of those cases I could maybe look into automatically detecting and fixing, but they are side effects of the joint working exactly as intended, so I don't know if it's a good idea to do that.
PhD, Mechanical Engineering, Stanford University
I also did not know about the 'delete face' issue - i will look into this.
Thank you.
Maybe you could add a checkbox that the user can use to fix that
IR for AS/NZS 1100