Salome HOME
Improve sketch performance while moving entities
[modules/shaper.git] / src / SketchSolver / PlaneGCSSolver / PlaneGCSSolver_Solver.cpp
index eb8868409fbcf49e072b8d6d122525737f3beeed..d06446e6f534ccb4d22fe7c0845a60f74e77c6a7 100644 (file)
@@ -35,7 +35,8 @@ void PlaneGCSSolver_Solver::addConstraint(GCSConstraintPtr theConstraint)
 {
   myEquationSystem->addConstraint(theConstraint.get());
   myConstraints[theConstraint->getTag()].insert(theConstraint);
-  myDOF = -1;
+  if (theConstraint->getTag() >= 0)
+    myDOF = -1;
 }
 
 void PlaneGCSSolver_Solver::removeConstraint(ConstraintID theID)
@@ -46,7 +47,8 @@ void PlaneGCSSolver_Solver::removeConstraint(ConstraintID theID)
     myDOF = (int)myParameters.size();
   } else {
     myEquationSystem->clearByTag(theID);
-    myDOF = -1;
+    if (theID >= 0)
+      myDOF = -1;
   }
 }