From: azv Date: Wed, 23 Dec 2015 12:51:07 +0000 (+0300) Subject: Fix for issue #1162 X-Git-Tag: V_2.1.0~94 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=bbca47ef296e1264c2171ac685b6d24321a3c830;p=modules%2Fshaper.git Fix for issue #1162 --- diff --git a/src/SketchSolver/SketchSolver_ConstraintMultiRotation.cpp b/src/SketchSolver/SketchSolver_ConstraintMultiRotation.cpp index 5fc487e12..a322e66be 100644 --- a/src/SketchSolver/SketchSolver_ConstraintMultiRotation.cpp +++ b/src/SketchSolver/SketchSolver_ConstraintMultiRotation.cpp @@ -25,7 +25,7 @@ void SketchSolver_ConstraintMultiRotation::getAttributes( myType = CONSTRAINT_MULTI_ROTATION; - myStorage->update(aCenterAttr, GID_OUTOFGROUP); + myStorage->update(aCenterAttr); theCenter = myStorage->entity(aCenterAttr); AttributeStringPtr aMethodTypeAttr = aData->string(SketchPlugin_MultiRotation::ANGLE_TYPE()); diff --git a/src/SketchSolver/SolveSpaceSolver/SolveSpaceSolver_Storage.cpp b/src/SketchSolver/SolveSpaceSolver/SolveSpaceSolver_Storage.cpp index b28e1b63d..23c4995e6 100644 --- a/src/SketchSolver/SolveSpaceSolver/SolveSpaceSolver_Storage.cpp +++ b/src/SketchSolver/SolveSpaceSolver/SolveSpaceSolver_Storage.cpp @@ -367,9 +367,11 @@ void SolveSpaceSolver_Storage::replaceInConstraints( std::list::const_iterator aCIt; for (; anIt != myConstraintMap.end(); ++anIt) for (aCIt = anIt->second.begin(); aCIt != anIt->second.end(); ++aCIt) { - // Do not process coincidence between points + // Do not process coincidence between points and "multi" constraints // (these constraints are stored to keep the structure of constraints). - if ((*aCIt)->type() == CONSTRAINT_PT_PT_COINCIDENT) + if ((*aCIt)->type() == CONSTRAINT_PT_PT_COINCIDENT || + (*aCIt)->type() == CONSTRAINT_MULTI_ROTATION || + (*aCIt)->type() == CONSTRAINT_MULTI_TRANSLATION) continue; bool isUpdated = false;