0024235: BRepBuilderAPI_Sewing - add protection against too small tolerance
authorkgv <kgv@opencascade.com>
Mon, 7 Oct 2013 11:53:19 +0000 (15:53 +0400)
committerbugmaster <bugmaster@opencascade.com>
Thu, 10 Oct 2013 10:24:13 +0000 (14:24 +0400)
src/BRepBuilderAPI/BRepBuilderAPI_Sewing.cxx

index 027e240..3631e81 100755 (executable)
@@ -1697,13 +1697,13 @@ void BRepBuilderAPI_Sewing::Init(const Standard_Real tolerance,
                           const Standard_Boolean optionNonmanifold)
 {
   // Set tolerance and Perform options
-  myTolerance      = tolerance;
+  myTolerance      = Max (tolerance, Precision::Confusion());
   mySewing         = optionSewing;
   myAnalysis       = optionAnalysis;
   myCutting        = optionCutting;
   myNonmanifold    = optionNonmanifold;
   // Set min and max tolerances
-  myMinTolerance   = tolerance*1e-4; //szv: proposal
+  myMinTolerance   = myTolerance * 1e-4; //szv: proposal
   if (myMinTolerance < Precision::Confusion()) myMinTolerance = Precision::Confusion();
   myMaxTolerance   = Precision::Infinite();
   // Set other modes