Salome HOME
crash fix: mirror (line, axis of sketch), select with rectangle, delete
[modules/shaper.git] / src / SketchSolver / PlaneGCSSolver / PlaneGCSSolver_Solver.h
index 791cc648a2ac38d4eb86b2a409b254a7db3ce3e1..c2c463c5d41a9fd4954fd749832a975ceffc0241 100644 (file)
@@ -46,10 +46,19 @@ public:
   /// \brief Revert solution to initial values
   virtual void undo();
 
+  /// \brief Check the constraint is conflicted with others
+  virtual bool isConflicting(const ConstraintID& theConstraint) const;
+
+private:
+  void collectConflicting();
+
 private:
   GCS::VEC_pD                myParameters;     ///< list of unknowns
   std::set<GCS::Constraint*> myConstraints;    ///< list of constraints already processed by the system
   GCS::System                myEquationSystem; ///< set of equations for solving in FreeGCS
+
+  GCS::VEC_I                 myConflictingIDs; ///< list of IDs of conflicting constraints
+  bool                       myConfCollected;  ///< specifies the conflicting constraints are already collected
 };
 
 #endif