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 abv
parent f00e46680f
commit ab1be48a6a
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);