BRepAlgoAPI_Fuse works differently on BRepOffsetAPI_ThruSections solids?

Hello, I'm experimenting with the boolean operations,
and I came across a weird bug - when i fuse a box created with BRepPrimAPI_MakePrism and a solid created by BRepOffsetAPI_ThruSections the part of the solid which is inside the box gets cut, and the box remains the same.
So i get a solid box and a shell on the box instead of one solid which incorporates the two.

I've tried adding each section individually to a BRepBuilderAPI_MakeSolid, and successfully created a solid, but when I tried to Fuse it with the box, I got the same result...

I've tried using Fuse on a box and a sphere, to make sure I'm doing it right - and this time it created one solid as expected.

anyone knows whats wrong with Fuse and ThruSections?

Lee Sangsu's picture

I found a similar wierd bug in the makebottle tutorial. I think your case has something with my case....

Recently, my colleague tried the makebottle tutorial.
She followed the instruction in the tutorial and found the final part of it to be mysterious, for in the above codes it instructed to use Boolean operation to fuse parts of the bottle, but in the final part it finished with the BrepBuilder to make a compound of the thread and the bottle body.
She tried to use boolean fuse to make one solid bottle with those parts, but failed doing so.

The result of fusing of the thread and the body is just the thread, not a whole bottle with the thread.

I think the developer who made the tutorial already knew about this bug, so he avoided using boolean operation in the finalizing the bottle, and just finished it with making a compound.

Is my guess is right? and does the bug still exist in the latest version of OCC?