Wed, 10/22/2014 - 13:54
Hello, I am using BRepAlgoAPI_Common for boolean operation.
This code runs fine on OCCT version 6.5.4.
BRepAlgoAPI_Common api(solid1, solid2);
#if OCC_VERSION_MAJOR >= 6 && OCC_VERSION_MINOR >= 6
api.SetOperation(BOPAlgo_COMMON);
#else
api.SetOperation(BOP_COMMON);
#endif
api.Build();
if (api.IsDone() && !api.ErrorStatus()) {
TopoDS_Shape result = api.Shape();
// ....
}
else {
// ...
}
I ported this code from OCCT 6.5.4 to 6.7.1.
I waited over of 3 hours, but the constructor of BRepAlgoAPI_Common blocks and it doesn't release the operation. Of course, Arguments solid1 and solid2 are same BRep shape in each environment. They are loaded from BRep file.
I found the case of arguments combination;
Solid x Solid => Not return from API constructor.
Face x Solid => Done.
Edge x Solid => Done.
This problem happend at only `solid by solid' arguments combination.
I tested the code on Windows XP, 7 and Debian GNU/Linux. I trying to use BOPAlgo_BOP class(is this new api?), but the operation blocked by constructor of it.
How can I change my code for boolean operation?
Thank you for reading my poor English.
Wed, 10/22/2014 - 14:25
Dear Transom,
If you still have this problem I would suggested you to register the issue in Mantis BugTracker which is available via the Collaborative portal - http://dev.opencascade.org/index.php?q=home/get_involved.
Don't forget to attach the shapes allowing to reproduce the case.
Best regards
Sergey
Wed, 10/22/2014 - 19:09
Thank you for your reply.
I will join to your project and I will post the issue and BRep files to bug tracker.
I will be happy if I can be of any help.
Fri, 10/24/2014 - 11:23
could u share the BREP files in the forum for analysis
thanks