]> SALOME platform Git repositories - modules/shaper.git/commitdiff
Salome HOME
Issue #140 fix: Perpendicularity is not applied
authorazv <azv@opencascade.com>
Wed, 17 Sep 2014 07:07:49 +0000 (11:07 +0400)
committerazv <azv@opencascade.com>
Wed, 17 Sep 2014 07:07:49 +0000 (11:07 +0400)
Forced resolving of a group of constraints was added when new entity appears

src/SketchSolver/SketchSolver_ConstraintGroup.cpp

index 5870e9186c14ecd63bd4d95c8e88831e35eb3386..53a16851c72c609538a10a423a3af80a5bbbbba3 100644 (file)
@@ -418,6 +418,7 @@ Slvs_hEntity SketchSolver_ConstraintGroup::changeEntity(FeaturePtr theEntity)
                                                      aEnd);
       myEntities.push_back(aLineEntity);
       myEntityFeatMap[theEntity] = aLineEntity.h;
+      myNeedToSolve = true;
       return aLineEntity.h;
     }
     // Circle
@@ -435,6 +436,7 @@ Slvs_hEntity SketchSolver_ConstraintGroup::changeEntity(FeaturePtr theEntity)
                                                   myWorkplane.normal, aRadius);
       myEntities.push_back(aCircleEntity);
       myEntityFeatMap[theEntity] = aCircleEntity.h;
+      myNeedToSolve = true;
       return aCircleEntity.h;
     }
     // Arc
@@ -451,6 +453,7 @@ Slvs_hEntity SketchSolver_ConstraintGroup::changeEntity(FeaturePtr theEntity)
                                                      myWorkplane.normal, aCenter, aStart, aEnd);
       myEntities.push_back(anArcEntity);
       myEntityFeatMap[theEntity] = anArcEntity.h;
+      myNeedToSolve = true;
       return anArcEntity.h;
     }
     // Point (it has low probability to be an attribute of constraint, so it is checked at the end)
@@ -463,6 +466,7 @@ Slvs_hEntity SketchSolver_ConstraintGroup::changeEntity(FeaturePtr theEntity)
 
       // Both the sketch point and its attribute (coordinates) link to the same SolveSpace point identifier
       myEntityFeatMap[theEntity] = aPoint;
+      myNeedToSolve = true;
       return aPoint;
     }
   }