From 59f520585bb4cf95945a529df82298ca946cdf3c Mon Sep 17 00:00:00 2001 From: pkv Date: Thu, 19 Feb 2015 15:02:32 +0300 Subject: [PATCH] 0025838: Wrong result obtained by General Fuse operator. Changes: class BOPTools_AlgoTools method: Standard_Boolean BOPTools_AlgoTools::GetFaceOff (const TopoDS_Edge& theE1, const TopoDS_Face& theF1, BOPTools_ListOfCoupleOfShape& theLCSOff, TopoDS_Face& theFOff, Handle(IntTools_Context)& theContext) has been changed. The comparison of the angles done with the angular tolerance value Test case for issue CR25838 --- src/BOPTools/BOPTools_AlgoTools.cxx | 10 ++++++-- tests/bugs/modalg_5/bug25838 | 36 +++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 tests/bugs/modalg_5/bug25838 diff --git a/src/BOPTools/BOPTools_AlgoTools.cxx b/src/BOPTools/BOPTools_AlgoTools.cxx index 8a5e9dc9cf..5a61d53869 100644 --- a/src/BOPTools/BOPTools_AlgoTools.cxx +++ b/src/BOPTools/BOPTools_AlgoTools.cxx @@ -813,7 +813,7 @@ Standard_Boolean BOPTools_AlgoTools::GetFaceOff { Standard_Boolean bRet; Standard_Real aT, aT1, aT2, aAngle, aTwoPI, aAngleMin, aDt3D; - Standard_Real aUmin, aUsup, aVmin, aVsup; + Standard_Real aUmin, aUsup, aVmin, aVsup, aPA; gp_Pnt aPn1, aPn2, aPx; gp_Dir aDN1, aDN2, aDBF, aDBF2, aDTF; gp_Vec aVTgt; @@ -823,6 +823,7 @@ Standard_Boolean BOPTools_AlgoTools::GetFaceOff BOPTools_ListIteratorOfListOfCoupleOfShape aIt; GeomAPI_ProjectPointOnSurf aProjPL; // + aPA=Precision::Angular(); aAngleMin=100.; aTwoPI=M_PI+M_PI; aC3D =BRep_Tool::Curve(theE1, aT1, aT2); @@ -860,7 +861,7 @@ Standard_Boolean BOPTools_AlgoTools::GetFaceOff aAngle=aTwoPI+aAngle; } // - if (aAngle