X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSketchSolver%2FSketchSolver_ConstraintGroup.h;h=362c31b251059d6f186bfd947f43a9af46763f51;hb=d34bc15bf8fafedd9188f47ff5962b5a1661d5b0;hp=7baeac158450944060cc9d49ea54f98aa62afcc0;hpb=81dad1acf409fa5e71090501bc1aa7e0b7d80cde;p=modules%2Fshaper.git diff --git a/src/SketchSolver/SketchSolver_ConstraintGroup.h b/src/SketchSolver/SketchSolver_ConstraintGroup.h index 7baeac158..362c31b25 100644 --- a/src/SketchSolver/SketchSolver_ConstraintGroup.h +++ b/src/SketchSolver/SketchSolver_ConstraintGroup.h @@ -94,6 +94,12 @@ public: */ void resolveConstraints(); + /** \brief Searches the constraints built on the entity and emit the signal to update them + * \param[in] theEntity attribute of the constraint + */ + void updateRelatedConstraints(boost::shared_ptr theEntity) const; + void updateRelatedConstraints(boost::shared_ptr theFeature) const; + protected: /** \brief Adds or updates an entity in the group * @@ -104,7 +110,7 @@ protected: * \return identifier of changed entity or 0 if entity could not be changed */ Slvs_hEntity changeEntity(boost::shared_ptr theEntity); - Slvs_hEntity changeEntity(boost::shared_ptr theEntity); + Slvs_hEntity changeEntity(FeaturePtr theEntity); /** \brief Adds or updates a normal in the group * @@ -140,8 +146,9 @@ protected: /** \brief Change values of attribute by parameters received from SolveSpace solver * \param[in,out] theAttribute pointer to the attribute to be changed * \param[in] theEntityID identifier of SolveSpace entity, which contains updated data + * \return \c true if the attribute's value has changed */ - void updateAttribute(boost::shared_ptr theAttribute, const Slvs_hEntity& theEntityID); + bool updateAttribute(boost::shared_ptr theAttribute, const Slvs_hEntity& theEntityID); /** \brief Adds a constraint for a point which should not be changed during computations * \param[in] theEntity the base for the constraint @@ -192,7 +199,7 @@ private: myConstraintMap; ///< The map between SketchPlugin and SolveSpace constraints std::map, Slvs_hEntity> myEntityAttrMap; ///< The map between "attribute" parameters of constraints and their equivalent SolveSpace entities - std::map, Slvs_hEntity> + std::map myEntityFeatMap; ///< The map between "feature" parameters of constraints and their equivalent SolveSpace entities // Conincident items