Repository navigation
Replies: 1 comment
|
Hi,
BooleanResultMapper mapper;
auto res = boolean( blue, white, BooleanOperation::DifferenceAB, { .mapper = &mapper } );
FaceBitSet redInResult = mapper.map( red, BooleanResultMapper::MapObject::A );In your picture, though, the cube overlaps the red region. auto [redHit, whiteHit] = findCollidingTriangleBitsets( { blue, &red }, white );
// redHit.any() == true -> the operation will change the protected areaIf what you want is "subtract the white model everywhere except near the protected area", cut the protected zone out of the white model first: Mesh redPatch = blue.cloneRegion( red );
Mesh guard = makeThickMesh( redPatch, { .outsideOffset = 0.1f, .insideOffset = depth } );
Mesh whiteTrimmed = *boolean( white, guard, BooleanOperation::DifferenceAB );
auto res = boolean( blue, whiteTrimmed, BooleanOperation::DifferenceAB, { .mapper = &mapper } );Then the red surface, and the material up to If your intended result is different, could you describe or sketch it? |
Uh oh!
There was an error while loading. Please reload this page.
Hi, I have two mesh models, as shown in the picture. The red faces on the blue model are protected areas. When performing a boolean operation between the blue model - the white model, how can I make sure the red faces stay unchanged?

All reactions