1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-09 13:22:24 +03:00

0026224: Wrong result obtained by Common operator.

Changes:
class BOPTools_AlgoTools2D
 - method:
Standard_Integer BOPTools_AlgoTools2D::AttachExistingPCurve
(const TopoDS_Edge& aE2,
const TopoDS_Edge& aE1,
const TopoDS_Face& aF,
const Handle(IntTools_Context)& aCtx)
has been changed.
The treatment of the curves that need to be reversed has been modified
taking into account reversed parameter

Test case for issue CR26224
This commit is contained in:
pkv
2015-05-21 12:56:26 +03:00
committed by bugmaster
parent 3285a59aa0
commit b6ec1ef98c
2 changed files with 43 additions and 5 deletions

View File

@@ -85,13 +85,14 @@ Standard_Integer BOPTools_AlgoTools2D::AttachExistingPCurve
//
bIsToReverse=IsToReverse(aE2, aE1, aCtx);
if (bIsToReverse) {
Standard_Real aT21r, aT22r;
//
aC2DoldC->Reverse();
//
gp_Pnt2d aP1, aP2;
//
aC2Dold->D0(aT22, aP2);
aC2DoldC->D0(aT21, aP1);
aC2DoldC->Translate(aP1, aP2);
aT21r=aC2DoldC->ReversedParameter(aT21);
aT22r=aC2DoldC->ReversedParameter(aT22);
aT21=aT22r;
aT22=aT21r;
}
//
aC2DT=new Geom2d_TrimmedCurve(aC2DoldC, aT21, aT22);