Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:
  1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
  2. Need support? Ask a question to our Community Support category.
  3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
  4. 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 Operation failed to return a valid part.

craig_18craig_18 Member Posts: 4
edited May 2015 in Community Support
Hi all,

I'm trying to remove material to make a cool pattern on this conic shape I'm modeling.  I have a sketch with a circle pattern, and I'm trying to extrude it all the way through the part, but my extrude feature breaks and gives me "Boolean Operation failed to return a valid part" when I try it. Please see link below for the part.

I have tried converting the sketch and extruding from the flat side of the part, to no avail.  

One interesting note is that if I choose "symmetric" for the extrude depth, I can get it to work, but only for short distances before it breaks (~0.75" max)  

Ref. Sketch 3, Extrude 2.

https://cad.onshape.com/documents/3338e1277be14b95a9c8321e/w/553c69327fbb4d78914dcb02

Thanks in advance.

Best Answers

  • jakeramsleyjakeramsley Member, Moderator, Onshape Employees, Developers Posts: 657
    Answer ✓
    Because your quadrangles share vertices, when extruded you are going to be creating a non-manifold edge at these points.  This is why you can extrude part of the way, but once a second profile starts intersecting with your cone, you create an infinitely thin edge which is rejected by our solver.  

    If you change your extrude from Remove to New, you'll notice that each profile comes in as a different color indicating a different part.  This is how the solver wants to handle infinitely thin edges, but can't be done when subtracting from the same part.
    Jake Ramsley

    Director of Quality Engineering & Release Manager              onshape.com
  • colemancoleman OS Professional Posts: 244 ✭✭✭
    Answer ✓
    @Craig Wheeler  I figured out the problem.  The sketch you are using to execute the extrude will result in zero thickness geometry.  Add some space between the points of each diamond.  As they are currently sketched, the points touch.  This is why you can extrude down to .75in but no more: the second intersecting diamond comes into play deeper than .75

    Good luck

Answers

  • craig_18craig_18 Member Posts: 4
    Ref. Sketch 3, Extrude 2.
  • jakeramsleyjakeramsley Member, Moderator, Onshape Employees, Developers Posts: 657
    Answer ✓
    Because your quadrangles share vertices, when extruded you are going to be creating a non-manifold edge at these points.  This is why you can extrude part of the way, but once a second profile starts intersecting with your cone, you create an infinitely thin edge which is rejected by our solver.  

    If you change your extrude from Remove to New, you'll notice that each profile comes in as a different color indicating a different part.  This is how the solver wants to handle infinitely thin edges, but can't be done when subtracting from the same part.
    Jake Ramsley

    Director of Quality Engineering & Release Manager              onshape.com
  • colemancoleman OS Professional Posts: 244 ✭✭✭
    Answer ✓
    @Craig Wheeler  I figured out the problem.  The sketch you are using to execute the extrude will result in zero thickness geometry.  Add some space between the points of each diamond.  As they are currently sketched, the points touch.  This is why you can extrude down to .75in but no more: the second intersecting diamond comes into play deeper than .75

    Good luck

  • craig_18craig_18 Member Posts: 4
    Many thanks!
  • cyclonewadecyclonewade OS Professional, Mentor, Developers Posts: 53 ✭✭✭
    edited May 2015
    Coleman said:
    @Craig Wheeler  I figured out the problem.  The sketch you are using to execute the extrude will result in zero thickness geometry.  Add some space between the points of each diamond.  As they are currently sketched, the points touch.  This is why you can extrude down to .75in but no more: the second intersecting diamond comes into play deeper than .75

    Good luck

    @Coleman just outed himself as a SolidWorks user.  :)
    imagine.create.deliver
  • colemancoleman OS Professional Posts: 244 ✭✭✭
    edited May 2015
    @cyclonewade - very true  :)

    It does take one to know one.
  • philip_thomasphilip_thomas Member, Moderator, Onshape Employees, Developers Posts: 1,381
    Sometimes these threads just make me smile - 
    We are ALL reformed SolidWorks users :)
    Philip Thomas - Onshape
  • christopher_owenschristopher_owens Member Posts: 235 ✭✭
    The "Zero Thickness" just helped me with a Boolean that wouldn't create a part. I had to do some profile sketch modifications and reelecting entities for my lofts.... but in the end I got a solid part!
  • christopher_owenschristopher_owens Member Posts: 235 ✭✭
    edited July 2015
    And some of us are Pro/E to SolidWorks to Onshape addicts!  >:)
  • martin_dangermartin_danger Member Posts: 5
    Wow, this is a pain. If I read this correctly, a boolean subtract function can't be used to remove something through a curved edge because it will create an infinitely thin edge. While mathematically true, what use is this programmed behaviour? When I drill a curved surface, the laws of physics don't break, they just create a pretty good approximation of that infinitely thin edge. What else could a user possibly want to achieve? Why not just create a limit to thinness and help users avoid more processing to overcome the solver's inability to reflect reality? 
  • eric_pestyeric_pesty Member Posts: 1,432 PRO
    Wow, this is a pain. If I read this correctly, a boolean subtract function can't be used to remove something through a curved edge because it will create an infinitely thin edge. While mathematically true, what use is this programmed behaviour? When I drill a curved surface, the laws of physics don't break, they just create a pretty good approximation of that infinitely thin edge. What else could a user possibly want to achieve? Why not just create a limit to thinness and help users avoid more processing to overcome the solver's inability to reflect reality? 
    I don't really understand the first part of your statement... You can definitely remove something "through" a curved edge... Just not if it's tangent to the face. The "zero thickness" problem is literally a mathematical problem that any software is going to struggle with.

    Do you have an example of such a "zero thickness" part you've created in "reality"?
  • S1monS1mon Member Posts: 2,289 PRO
    @eric_pesty

    Line or point contact is something that Granite (the kernel that PTC developed and uses for Creo) can handle. Parasolid can't. I'm not sure about ACIS or C3D or any of the other kernels.

    It's fair to say that zero thickness joints between shapes don't really exist in reality (it's either a gap or some amount of solid material), but it's annoying if for no other reason than it confuses the hell out of new users. 
  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,284
    It’s a Parasolid foible - most other kernels allow it. 
    Senior Director, Technical Services, EMEAI
  • eric_pestyeric_pesty Member Posts: 1,432 PRO
    @S1mon, @NeilCooke
    My bad, I thought it was a more or less universal limitation in CAD systems...
    I guess it would be nice when you are adjusting/configuring things and you happen to hit a zero thickness somewhere if it didn't fail but at the end of the day you can't make it so it's not really an issue that you can't draw it...
Sign In or Register to comment.