- else if (aCIter != myConstraints.end() &&
- aCIter->first->getKind() == SketchPlugin_ConstraintCoincidence::ID()) {
- // Update multicoincidence
- std::list<ConstraintPtr> aMultiCoinc;
- SolverConstraintPtr aCoincidence = aCIter->second;
- while (aCIter != myConstraints.end()) {
- if (aCIter->second != aCoincidence) {
- ++aCIter;
- continue;
- }
- if (aCIter->first != theConstraint)
- aMultiCoinc.push_back(aCIter->first);
- aCIter->second->remove();
- ConstraintConstraintMap::iterator aRemoveIt = aCIter++;
- myConstraints.erase(aRemoveIt);
- }
-
- std::list<ConstraintPtr>::iterator anIt = aMultiCoinc.begin();
- for (; anIt != aMultiCoinc.end(); ++anIt)
- changeConstraint(*anIt);
- }
-}
-
-// ============================================================================
-// Function: isComplexConstraint
-// Class: SketchSolver_Group
-// Purpose: verifies the constraint is complex, i.e. it needs another constraints to be created before
-// ============================================================================
-bool SketchSolver_Group::isComplexConstraint(FeaturePtr theConstraint)
-{
- return theConstraint->getKind() == SketchPlugin_ConstraintFillet::ID() ||
- theConstraint->getKind() == SketchPlugin_ConstraintMirror::ID() ||
- theConstraint->getKind() == SketchPlugin_ConstraintTangent::ID();