Boolean difference between complex geometry

Boolean difference between complex geometry

Anonymous
Not applicable
3,647 Views
8 Replies
Message 1 of 9

Boolean difference between complex geometry

Anonymous
Not applicable

Hi to everyone,

I have a spongy structure (builted in meshmixer) and i want to to subtract this structure from a parallelepiped.

I read a lot about that, i know that the size of the mesh has to be the same both in the spongy structure and in the parallelepiped. I tried to make both solid and to change everytime the parameters of the boolean operation. (i also used the inspector tool for check both the geometry)

Every time "an unknow fatal error occurs". I don't know how to do that, and i need to do this operation.

 
 
0 Likes
Accepted solutions (1)
3,648 Views
8 Replies
Replies (8)
Message 2 of 9

Anonymous
Not applicable

No fast fix for your problem, but some info.

 

Have the last year been fighting a lot with the boolan fuction and complex objects. The function has major problems whenever you have an object where sides have 180 degree differense or it encounter enclosed voids.

Basicly it works when you have two object where the areas effected are continouse in each object, but converting to solid often helps when the object are not very complex.

 

0 Likes
Message 3 of 9

Anonymous
Not applicable
Accepted solution

You can get a boolean union or difference result of two object by using EDIT/MakeSolid too (at costs of accuracy, file size and processing time - but stable). For complex objects this might be a better way...

 

To get a union simply EDIT/Combine the objects to one and run MakeSolid.

To get a difference of a meshA - meshB you need to invert the normals of meshB. > SelectAll of meshB and do Edit/FipNormals (MeshB should now show the stripe pattern). Now EDIT/Combine meshA and meshB and run EDIT/MakeSolid. Note: Accuracy of the result depends on SolidType (best result on SharpEdgePreserve), SolidAccuracy and MeshDensity (Set both CellSizes to a similar value). You can set a higher value of SolidAccuracy and MeshDensity than their sliders' max by numerical input.

Message 4 of 9

Anonymous
Not applicable

Hi Gunter,

Thanks you really for your clear and detailed explanation. In this way i succeded.

 

0 Likes
Message 5 of 9

hfcandrew
Advisor
Advisor

The higher the number of triangles, the more likely it is to fail. Especially with nonmanifold mesh errors.

 

Couldn't you instead just 'plane cut' your sponge into the shape of your parallelepiped?

0 Likes
Message 6 of 9

Anonymous
Not applicable

Well, the problem is that i had to do a boolean difference and not a boolean union. Maybe if you want to do a boolean union the solution that you suggest might be the way

0 Likes
Message 7 of 9

Anonymous
Not applicable

Well, the problem is that i had to do a boolean difference and not a boolean union. Maybe if you want to do a boolean union the solution that you suggest might be an alternative way

0 Likes
Message 8 of 9

Anonymous
Not applicable

You might do the PlaneCut way to get a difference as well:

Flip the normals of the structure and embed this structure in some bigger shape. Combine both and use PlaneCut to cut the desired shape.

0 Likes
Message 9 of 9

Anonymous
Not applicable

I use this metode all the time and often it work, but it fails just as often.

 

Basicly when using the boolan fuction you need to think of how the remove object are going to fit into the source object. Any small corner poking out or doubling up will generate a fail after a long wait.

When it works, it finished fast even for fearly complex models, so I have learned to terminate the calculation when it start to take time calculating higher levels.

 

0 Likes