]> SALOME platform Git repositories - modules/shaper.git/commitdiff
Salome HOME
Fix conflicting constraints problem on tangent arc (issue #1718)
authorazv <azv@opencascade.com>
Mon, 5 Sep 2016 12:53:23 +0000 (15:53 +0300)
committerazv <azv@opencascade.com>
Mon, 5 Sep 2016 13:20:58 +0000 (16:20 +0300)
src/SketchSolver/PlaneGCSSolver/PlaneGCSSolver_Solver.cpp

index 72736bc4317dbf4324df8f3b3c2c9223ea6434b6..01aa0da3887e3b18168d37365039e09fcd2f40b0 100644 (file)
@@ -195,7 +195,7 @@ GCS::SolveStatus PlaneGCSSolver_Solver::solveWithoutTangent()
       if (!isTangentTruth(*aRemIt))
         break;
     if (aRemIt != aRemovedTangent.end())
-      aResult = GCS::Failed;
+      aResult = (GCS::SolveStatus)myEquationSystem->solve(myParameters);
   }
 
   if (aResult == GCS::Success)
@@ -226,7 +226,7 @@ bool PlaneGCSSolver_Solver::isTangentTruth(GCS::Constraint* theTangent) const
            fabs(aDist2 - aRadDiff * aRadDiff) <= aTol2;
   }
   if (theTangent->getTypeId() == GCS::P2LDistance) {
-    static const double aTol2 = 1e-12;
+    static const double aTol2 = 1e-10;
     GCS::VEC_pD aParams = theTangent->params();
     double aDist2 = *(aParams[6]) * *(aParams[6]);
     // orthogonal line direction