#include <ProjectiveConstraintSet.h>
Component computing constraints within a simulated body. More...

Component computing constraints within a simulated body.
This class define the abstract API common to constraints using a given type of DOFs. A ProjectiveConstraintSet computes constraints applied to one simulated body given its current position and velocity.
| Public Attributes | |
| Data< Real > | endTime | 
| The constraint stops acting after the given value. Use a negative value for infinite constraints.  More... | |
|  Public Attributes inherited from sofa::core::objectmodel::BaseObject | |
| Data< bool > | f_listening | 
| if true, handle the events, otherwise ignore the events  More... | |
|  Public Attributes inherited from sofa::core::objectmodel::Base | |
| std::vector< lifecycle::DeprecatedData * > | m_oldAttributes | 
| Data< int > | d_messageLogCount | 
| Data< std::string > | name | 
| Name of the object.  More... | |
| Data< bool > | f_printLog | 
| if true, emits extra messages at runtime.  More... | |
| Data< sofa::core::objectmodel::TagSet > | f_tags | 
| list of the subsets the object belongs to  More... | |
| Data< sofa::type::BoundingBox > | f_bbox | 
| this object bounding box  More... | |
| Data< sofa::core::objectmodel::ComponentState > | d_componentState | 
| The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).  More... | |
| std::string | m_definitionSourceFileName {""} | 
| int | m_definitionSourceFilePos {-1} | 
| std::string | m_instanciationSourceFileName {""} | 
| int | m_instanciationSourceFilePos {-1} | 
| Public Member Functions | |
| SOFA_CLASS2 (SOFA_TEMPLATE(ProjectiveConstraintSet, DataTypes), BaseProjectiveConstraintSet, SOFA_TEMPLATE(SingleStateAccessor, DataTypes)) | |
| virtual bool | isActive () const | 
| if false, the constraint does nothing  More... | |
| virtual type::vector< core::BaseState * > | getModels () override | 
| Return the lists of models this constraint applies to.  More... | |
| void | applyConstraint (const MechanicalParams *, const sofa::core::behavior::MultiMatrixAccessor *) override | 
| Project the global Mechanical Matrix to constrained space using offset parameter.  More... | |
| void | applyConstraint (const MechanicalParams *, linearalgebra::BaseVector *, const sofa::core::behavior::MultiMatrixAccessor *) override | 
| Project the global Mechanical Vector to constrained space using offset parameter.  More... | |
| virtual void | projectResponse (const MechanicalParams *mparams, MultiVecDerivId dxId)=0 | 
| virtual void | projectResponse (const MechanicalParams *, double **) | 
| Project the compliance Matrix to constrained space.  More... | |
| Vector operations | |
| void | projectResponse (const MechanicalParams *mparams, MultiVecDerivId dxId) override | 
| void | projectJacobianMatrix (const MechanicalParams *mparams, MultiMatrixDerivId cId) override | 
| void | projectVelocity (const MechanicalParams *mparams, MultiVecDerivId vId) override | 
| void | projectPosition (const MechanicalParams *mparams, MultiVecCoordId xId) override | 
| virtual void | projectResponse (const MechanicalParams *mparams, DataVecDeriv &dx)=0 | 
| virtual void | projectVelocity (const MechanicalParams *mparams, DataVecDeriv &v)=0 | 
| virtual void | projectPosition (const MechanicalParams *mparams, DataVecCoord &x)=0 | 
| virtual void | projectJacobianMatrix (const MechanicalParams *, DataMatrixDeriv &cData)=0 | 
|  Public Member Functions inherited from sofa::core::behavior::BaseProjectiveConstraintSet | |
| SOFA_ABSTRACT_CLASS (BaseProjectiveConstraintSet, objectmodel::BaseObject) | |
| int | getGroup () const | 
| void | setGroup (int g) | 
| bool | insertInNode (objectmodel::BaseNode *node) override | 
| bool | removeInNode (objectmodel::BaseNode *node) override | 
| virtual void | projectResponse (const MechanicalParams *, double **) | 
| Project the compliance Matrix to constrained space.  More... | |
| virtual void | projectMatrix (sofa::linearalgebra::BaseMatrix *, unsigned) | 
| virtual void | applyConstraint (sofa::core::behavior::ZeroDirichletCondition *) | 
|  Public Member Functions inherited from sofa::core::behavior::StateAccessor | |
| SOFA_ABSTRACT_CLASS (StateAccessor, objectmodel::BaseObject) | |
| virtual const MultiLink< StateAccessor, BaseMechanicalState, BaseLink::FLAG_DUPLICATE >::Container & | getMechanicalStates () const | 
| Return a list of mechanical states to which this component is associated.  More... | |
| void | computeBBox (const core::ExecParams *params, bool onlyVisible=false) override | 
|  Public Member Functions inherited from sofa::core::objectmodel::BaseObject | |
| SOFA_CLASS (BaseObject, Base) | |
| virtual void | draw (const core::visual::VisualParams *) | 
| Render internal data of this object, for debugging purposes.  More... | |
| void | setSrc (const std::string &v, std::vector< std::string > *attributeList=nullptr) | 
| Sets a source Object and parses it to collect dependent Data.  More... | |
| void | setSrc (const std::string &v, const BaseObject *loader, std::vector< std::string > *attributeList=nullptr) | 
| Base * | findLinkDestClass (const BaseClass *destType, const std::string &path, const BaseLink *link) override | 
| virtual std::string | getPathName () const override | 
| Return the full path name of this object.  More... | |
| SReal | getTime () const | 
| Current time.  More... | |
| const BaseContext * | getContext () const | 
| BaseContext * | getContext () | 
| const BaseObject * | getMaster () const | 
| BaseObject * | getMaster () | 
| const VecSlaves & | getSlaves () const | 
| BaseObject * | getSlave (const std::string &name) const | 
| virtual void | addSlave (BaseObject::SPtr s) | 
| virtual void | removeSlave (BaseObject::SPtr s) | 
| virtual void | handleEvent (Event *) | 
| Handle an event.  More... | |
| virtual void | handleTopologyChange () | 
| virtual void | handleTopologyChange (core::topology::Topology *t) | 
| void | parse (BaseObjectDescription *arg) override | 
| Parse the given description to assign values to this object's fields and potentially other parameters.  More... | |
| virtual void | bwdInit () | 
| Initialization method called at graph creation and modification, during bottom-up traversal.  More... | |
| virtual void | reinit () | 
| Update method called when variables used in precomputation are modified.  More... | |
| void | updateInternal () | 
| Update method called when variables (used to compute other internal variables) are modified.  More... | |
| virtual void | storeResetState () | 
| Save the initial state for later uses in reset()  More... | |
| virtual void | reset () | 
| Reset to initial state.  More... | |
| virtual void | cleanup () | 
|  Public Member Functions inherited from sofa::core::objectmodel::Base | |
| virtual const BaseClass * | getClass () const | 
| void | addDeprecatedAttribute (lifecycle::DeprecatedData *attribute) | 
| void | addUpdateCallback (const std::string &name, std::initializer_list< BaseData * > inputs, std::function< sofa::core::objectmodel::ComponentState(const DataTracker &)> function, std::initializer_list< BaseData * > outputs) | 
| void | addOutputsToCallback (const std::string &name, std::initializer_list< BaseData * > outputs) | 
| const std::string & | getName () const | 
| Accessor to the object name.  More... | |
| void | setName (const std::string &n) | 
| Set the name of this object.  More... | |
| void | setName (const std::string &n, int counter) | 
| Set the name of this object, adding an integer counter.  More... | |
| std::string | getTypeName () const | 
| Get the type name of this object (i.e. class and template types)  More... | |
| virtual std::string | getClassName () const | 
| Get the class name of this object.  More... | |
| virtual std::string | getTemplateName () const final | 
| Get the template type names (if any) used to instantiate this object.  More... | |
| std::string | getNameSpaceName () const | 
| Get the template type names (if any) used to instantiate this object.  More... | |
| void | setDefinitionSourceFileName (const std::string &sourceFileName) | 
| Set the source filename (where the component is implemented)  More... | |
| const std::string & | getDefinitionSourceFileName () const | 
| Get the source filename (where the component is implemented)  More... | |
| void | setDefinitionSourceFilePos (const int) | 
| Set the source location (where the component is implemented)  More... | |
| int | getDefinitionSourceFilePos () const | 
| Get the source location (where the component is implemented)  More... | |
| void | setInstanciationSourceFileName (const std::string &sourceFileName) | 
| const std::string & | getInstanciationSourceFileName () const | 
| void | setInstanciationSourceFilePos (const int) | 
| int | getInstanciationSourceFilePos () const | 
| void | addMessage (const sofa::helper::logging::Message &m) const | 
| size_t | countLoggedMessages (sofa::helper::logging::Message::TypeSet t=sofa::helper::logging::Message::AnyTypes) const | 
| const std::deque< sofa::helper::logging::Message > & | getLoggedMessages () const | 
| const std::string | getLoggedMessagesAsString (sofa::helper::logging::Message::TypeSet t=sofa::helper::logging::Message::AnyTypes) const | 
| void | clearLoggedMessages () const | 
| bool | notMuted () const | 
| const sofa::core::objectmodel::TagSet & | getTags () const | 
| Represents the subsets the object belongs to.  More... | |
| bool | hasTag (Tag t) const | 
| Return true if the object belong to the given subset.  More... | |
| void | addTag (Tag t) | 
| Add a subset qualification to the object.  More... | |
| void | removeTag (Tag t) | 
| Remove a subset qualification to the object.  More... | |
| ComponentState | getComponentState () const | 
| bool | isComponentStateValid () const | 
| bool | isComponentStateInvalid () const | 
| SOFA_ATTRIBUTE_DEPRECATED__TOBASECONSTRAINT () virtual const behavior | |
| virtual bool | parseField (const std::string &attribute, const std::string &value) | 
| Assign one field value (Data or Link)  More... | |
| virtual bool | hasField (const std::string &attribute) const | 
| Check if a given Data field or Link exists.  More... | |
| void | parseFields (const std::list< std::string > &str) | 
| Assign the field values stored in the given list of name + value pairs of strings.  More... | |
| virtual void | parseFields (const std::map< std::string, std::string * > &str) | 
| Assign the field values stored in the given map of name -> value pairs.  More... | |
| void | writeDatas (std::map< std::string, std::string * > &str)=delete | 
| Write the current field values to the given map of name -> value pairs.  More... | |
| void | writeDatas (std::ostream &out, const std::string &separator=" ") | 
| BaseData * | findData (const std::string &name) const | 
| std::vector< BaseData * > | findGlobalField (const std::string &name) const | 
| Find data fields given a name: several can be found as we look into the alias map.  More... | |
| BaseLink * | findLink (const std::string &name) const | 
| std::vector< BaseLink * > | findLinks (const std::string &name) const | 
| Find link fields given a name: several can be found as we look into the alias map.  More... | |
| virtual void | updateLinks (bool logErrors=true) | 
| Update pointers in case the pointed-to objects have appeared.  More... | |
| template<class T > | |
| BaseData::BaseInitData | initData (::sofa::core::objectmodel::Data< T > *field, const char *name, const char *help, ::sofa::core::objectmodel::BaseData::DataFlags dataflags) | 
| Helper method used to initialize a data field containing a value of type T.  More... | |
| template<class T > | |
| BaseData::BaseInitData | initData (Data< T > *field, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false) | 
| Helper method used to initialize a data field containing a value of type T.  More... | |
| template<class T > | |
| Data< T >::InitData | initData (Data< T > *field, const T &value, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false) | 
| Helper method used to initialize a data field containing a value of type T.  More... | |
| void | addData (BaseData *f, const std::string &name) | 
| void | addData (BaseData *f) | 
| void | removeData (BaseData *f) | 
| Remove a data field.  More... | |
| void | addAlias (BaseData *field, const char *alias) | 
| Add an alias to a Data.  More... | |
| void | addLink (BaseLink *l) | 
| Add a link.  More... | |
| void | addAlias (BaseLink *link, const char *alias) | 
| Add an alias to a Link.  More... | |
| const VecData & | getDataFields () const | 
| Accessor to the vector containing all the fields of this object.  More... | |
| const MapData & | getDataAliases () const | 
| Accessor to the map containing all the aliases of this object.  More... | |
| const VecLink & | getLinks () const | 
| Accessor to the vector containing all the fields of this object.  More... | |
| const MapLink & | getLinkAliases () const | 
| Accessor to the map containing all the aliases of this object.  More... | |
| virtual bool | findDataLinkDest (BaseData *&ptr, const std::string &path, const BaseLink *link) | 
| template<class T > | |
| bool | findLinkDest (T *&ptr, const std::string &path, const BaseLink *link) | 
|  Public Member Functions inherited from sofa::core::behavior::SingleStateAccessor< DataTypes > | |
| SOFA_ABSTRACT_CLASS (SOFA_TEMPLATE(SingleStateAccessor, DataTypes), StateAccessor) | |
| void | init () override | 
| Initialization method called at graph creation and modification, during top-down traversal.  More... | |
| MechanicalState< DataTypes > * | getMState () | 
| const MechanicalState< DataTypes > * | getMState () const | 
| Static Public Member Functions | |
| template<class T > | |
| static bool | canCreate (T *&obj, objectmodel::BaseContext *context, objectmodel::BaseObjectDescription *arg) | 
|  Static Public Member Functions inherited from sofa::core::objectmodel::BaseObject | |
| template<class T > | |
| static bool | canCreate (T *, BaseContext *, BaseObjectDescription *) | 
| Pre-construction check method called by ObjectFactory.  More... | |
| template<class T > | |
| static T::SPtr | create (T *, BaseContext *context, BaseObjectDescription *arg) | 
| Construction method called by ObjectFactory.  More... | |
|  Static Public Member Functions inherited from sofa::core::objectmodel::Base | |
| static const BaseClass * | GetClass () | 
| template<class T > | |
| static std::string | shortName (const T *ptr=nullptr, BaseObjectDescription *=nullptr) | 
| Protected Member Functions | |
| ProjectiveConstraintSet (MechanicalState< DataTypes > *mm=nullptr) | |
| ~ProjectiveConstraintSet () override | |
|  Protected Member Functions inherited from sofa::core::behavior::BaseProjectiveConstraintSet | |
| BaseProjectiveConstraintSet () | |
| ~BaseProjectiveConstraintSet () override | |
|  Protected Member Functions inherited from sofa::core::behavior::StateAccessor | |
| StateAccessor () | |
| ~StateAccessor () override=default | |
|  Protected Member Functions inherited from sofa::core::objectmodel::BaseObject | |
| BaseObject () | |
| ~BaseObject () override | |
| virtual void | doUpdateInternal () | 
| Implementation of the internal update.  More... | |
| void | changeContextLink (BaseContext *before, BaseContext *&after) | 
| void | changeSlavesLink (BaseObject::SPtr ptr, std::size_t, bool add) | 
| This method insures that slaves objects have master and context links set correctly.  More... | |
| void | trackInternalData (const BaseData &data) | 
| Method called to add the Data to the DataTracker (listing the Data to track)  More... | |
| void | cleanTracker () | 
| bool | hasDataChanged (const BaseData &data) | 
| Method called to know if a tracked Data has changed.  More... | |
|  Protected Member Functions inherited from sofa::core::objectmodel::Base | |
| Base () | |
| virtual | ~Base () | 
| void | initData0 (BaseData *field, BaseData::BaseInitData &res, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false) | 
| Helper method used by initData()  More... | |
| void | initData0 (BaseData *field, BaseData::BaseInitData &res, const char *name, const char *help, BaseData::DataFlags dataFlags) | 
| Helper method used by initData()  More... | |
| template<class T > | |
| void | initData0 (Data< T > *field, typename Data< T >::InitData &res, const T &value, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false) | 
| Helper method used by initData()  More... | |
|  Protected Member Functions inherited from sofa::core::IntrusiveObject | |
| virtual | ~IntrusiveObject ()=default | 
|  Protected Member Functions inherited from sofa::core::behavior::SingleStateAccessor< DataTypes > | |
| SingleStateAccessor (MechanicalState< DataTypes > *mm=nullptr) | |
| ~SingleStateAccessor () override=default | |
| Data<Real> sofa::core::behavior::ProjectiveConstraintSet< DataTypes >::endTime | 
The constraint stops acting after the given value. Use a negative value for infinite constraints.
| 
 | protected | 
| 
 | overrideprotected | 
| 
 | inlineoverridevirtual | 
Project the global Mechanical Matrix to constrained space using offset parameter.
Reimplemented from sofa::core::behavior::BaseProjectiveConstraintSet.
| 
 | inlineoverridevirtual | 
Project the global Mechanical Vector to constrained space using offset parameter.
Reimplemented from sofa::core::behavior::BaseProjectiveConstraintSet.
| 
 | inlinestatic | 
Pre-construction check method called by ObjectFactory. Check that DataTypes matches the MechanicalState.
| 
 | inlineoverridevirtual | 
Return the lists of models this constraint applies to.
Implements sofa::core::behavior::BaseProjectiveConstraintSet.
| 
 | virtual | 
if false, the constraint does nothing
| 
 | pure virtual | 
Project c to constrained space (c models a constraint).
This method must be implemented by the component to handle Lagrange Multiplier based constraint
Implemented in sofa::component::constraint::projective::FixedPlaneProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::SkeletalMotionProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::PositionBasedDynamicsProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PointProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PlaneProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PartialLinearMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::PartialFixedProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::ParabolicProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::OscillatorProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::LineProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::LinearVelocityProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::LinearMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::HermiteSplineProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedTranslationProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::DirectionProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedRotationProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PatchTestMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::AffineMovementProjectiveConstraint< TDataTypes >, and sofa::component::constraint::projective::AffineMovementProjectiveConstraint< T >.
| 
 | overridevirtual | 
Project the L matrix of the Lagrange Multiplier equation system.
This method retrieves the lines of the Jacobian Matrix from the MechanicalState and call the internal projectResponse(MatrixDeriv&) method implemented by the component.
Implements sofa::core::behavior::BaseProjectiveConstraintSet.
| 
 | pure virtual | 
Project x to constrained space (x models a position).
This method must be implemented by the component, and is usually called by the generic ProjectiveConstraintSet::projectPosition() method.
Implemented in sofa::component::constraint::projective::FixedPlaneProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PositionBasedDynamicsProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PointProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PlaneProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PatchTestMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::PartialLinearMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::ParabolicProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::OscillatorProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::LineProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::LinearVelocityProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::LinearMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::HermiteSplineProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedTranslationProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::DirectionProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::AffineMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::AffineMovementProjectiveConstraint< T >, sofa::component::constraint::projective::PositionBasedDynamicsProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PositionBasedDynamicsProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedRotationProjectiveConstraint< DataTypes >, and sofa::component::constraint::projective::SkeletalMotionProjectiveConstraint< TDataTypes >.
| 
 | overridevirtual | 
Project x to constrained space (x models a position).
This method retrieves the xId vector from the MechanicalState and call the internal projectPosition(VecCoord&) method implemented by the component.
Implements sofa::core::behavior::BaseProjectiveConstraintSet.
| 
 | inline | 
Project the compliance Matrix to constrained space.
| 
 | pure virtual | 
Project dx to constrained space (dx models an acceleration).
This method must be implemented by the component, and is usually called by the generic ProjectiveConstraintSet::projectResponse() method.
Implemented in sofa::component::constraint::projective::FixedPlaneProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::SkeletalMotionProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::PointProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PlaneProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PatchTestMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::PartialLinearMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::PartialFixedProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::ParabolicProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::OscillatorProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::LineProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::LinearVelocityProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::LinearMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::HermiteSplineProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedTranslationProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::DirectionProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::AffineMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::AffineMovementProjectiveConstraint< T >, sofa::component::constraint::projective::FixedRotationProjectiveConstraint< DataTypes >, and sofa::component::constraint::projective::PositionBasedDynamicsProjectiveConstraint< DataTypes >.
| 
 | overridevirtual | 
Project dx to constrained space (dx models an acceleration).
This method retrieves the dxId vector from the MechanicalState and call the internal projectResponse(VecDeriv&) method implemented by the component.
Implements sofa::core::behavior::BaseProjectiveConstraintSet.
| virtual void sofa::core::behavior::BaseProjectiveConstraintSet::projectResponse | 
Project dx to constrained space (dx models an acceleration).
| dxId | output vector | 
| 
 | pure virtual | 
Project v to constrained space (v models a velocity).
This method must be implemented by the component, and is usually called by the generic ProjectiveConstraintSet::projectVelocity() method.
Implemented in sofa::component::constraint::projective::FixedPlaneProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PositionBasedDynamicsProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PointProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PlaneProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::PatchTestMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::PartialLinearMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::PartialFixedProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::ParabolicProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::OscillatorProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::LineProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::LinearVelocityProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::LinearMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::HermiteSplineProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedTranslationProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::FixedProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::DirectionProjectiveConstraint< DataTypes >, sofa::component::constraint::projective::AffineMovementProjectiveConstraint< TDataTypes >, sofa::component::constraint::projective::AffineMovementProjectiveConstraint< T >, sofa::component::constraint::projective::FixedRotationProjectiveConstraint< DataTypes >, and sofa::component::constraint::projective::SkeletalMotionProjectiveConstraint< TDataTypes >.
| 
 | overridevirtual | 
Project v to constrained space (v models a velocity).
This method retrieves the vId vector from the MechanicalState and call the internal projectVelocity(VecDeriv&) method implemented by the component.
Implements sofa::core::behavior::BaseProjectiveConstraintSet.
| sofa::core::behavior::ProjectiveConstraintSet< DataTypes >::SOFA_CLASS2 | ( | SOFA_TEMPLATE(ProjectiveConstraintSet< DataTypes >, DataTypes) | , | 
| BaseProjectiveConstraintSet< DataTypes > | , | ||
| SOFA_TEMPLATE(SingleStateAccessor, DataTypes) | |||
| ) |