Salome HOME
SolveSpaceSolver: do not update IDs of sub-entities for the Multi constraints
authorazv <azv@opencascade.com>
Thu, 17 Dec 2015 07:04:13 +0000 (10:04 +0300)
committerazv <azv@opencascade.com>
Thu, 17 Dec 2015 07:04:13 +0000 (10:04 +0300)
src/SketchSolver/SolveSpaceSolver/SolveSpaceSolver_Storage.cpp

index 04d8fe663bd83c9ddcc48fc26ba3464344b9cb08..080e321386a4298bb4fae03c7160f449a8a80014 100644 (file)
@@ -73,6 +73,9 @@ bool SolveSpaceSolver_Storage::update(ConstraintWrapperPtr& theConstraint)
   std::list<EntityWrapperPtr>::iterator anIt = anEntities.begin();
   for (; anIt != anEntities.end(); ++anIt) {
     isUpdated = update(*anIt) || isUpdated;
+    // do not update constrained entities for Multi constraints
+    if (aSlvsConstr.type == SLVS_C_MULTI_ROTATION || aSlvsConstr.type != SLVS_C_MULTI_TRANSLATION)
+      continue;
 
     Slvs_hEntity anID = (Slvs_hEntity)(*anIt)->id();
     if ((*anIt)->type() == ENTITY_POINT) {