#include <FixedPlaneConstraint.h>


Public Types | |
| typedef core::componentmodel::behavior::Constraint < DataTypes > | Inherit |
| typedef DataTypes::VecCoord | VecCoord |
| typedef DataTypes::VecDeriv | VecDeriv |
| typedef DataTypes::Coord | Coord |
| typedef DataTypes::Deriv | Deriv |
| typedef topology::PointSubset | SetIndex |
| typedef Coord::value_type | Real |
Public Member Functions | |
| FixedPlaneConstraint () | |
| ~FixedPlaneConstraint () | |
| FixedPlaneConstraint< DataTypes > * | addConstraint (int index) |
| FixedPlaneConstraint< DataTypes > * | removeConstraint (int index) |
| virtual void | handleTopologyChange () |
| Handle topological Changes. | |
| void | projectResponse (VecDeriv &dx) |
| Project dx to constrained space (dx models an acceleration). | |
| virtual void | projectVelocity (VecDeriv &) |
| project dx to constrained space (dx models a velocity) | |
| virtual void | projectPosition (VecCoord &) |
| project x to constrained space (x models a position) | |
| virtual void | init () |
| Initialization method called at graph modification, during bottom-up traversal. | |
| void | setDirection (Coord dir) |
| void | selectVerticesAlongPlane () |
| void | setDminAndDmax (const Real _dmin, const Real _dmax) |
| void | draw () |
| Render internal data of this object, for debugging purposes. | |
Protected Member Functions | |
| bool | isPointInPlane (Coord p) |
Static Protected Member Functions | |
| static bool | FPCTestNewPointFunction (int, void *, const helper::vector< unsigned int > &, const helper::vector< double > &) |
| static void | FPCRemovalFunction (int, void *) |
Protected Attributes | |
| Data< SetIndex > | indices |
| Data< Coord > | direction |
| direction on which the constraint applies | |
| bool | selectVerticesFromPlanes |
| whether vertices should be selected from 2 parallel planes | |
| Data< Real > | dmin |
| Data< Real > | dmax |
| sofa::core::componentmodel::topology::BaseMeshTopology * | topology |
Definition at line 45 of file FixedPlaneConstraint.h.
| typedef DataTypes::Coord sofa::component::constraint::FixedPlaneConstraint< DataTypes >::Coord |
Reimplemented from sofa::core::componentmodel::behavior::Constraint< DataTypes >.
Definition at line 51 of file FixedPlaneConstraint.h.
| typedef DataTypes::Deriv sofa::component::constraint::FixedPlaneConstraint< DataTypes >::Deriv |
Reimplemented from sofa::core::componentmodel::behavior::Constraint< DataTypes >.
Definition at line 52 of file FixedPlaneConstraint.h.
| typedef core::componentmodel::behavior::Constraint<DataTypes> sofa::component::constraint::FixedPlaneConstraint< DataTypes >::Inherit |
Definition at line 48 of file FixedPlaneConstraint.h.
| typedef Coord::value_type sofa::component::constraint::FixedPlaneConstraint< DataTypes >::Real |
Reimplemented from sofa::core::componentmodel::behavior::Constraint< DataTypes >.
Definition at line 54 of file FixedPlaneConstraint.h.
| typedef topology::PointSubset sofa::component::constraint::FixedPlaneConstraint< DataTypes >::SetIndex |
Definition at line 53 of file FixedPlaneConstraint.h.
| typedef DataTypes::VecCoord sofa::component::constraint::FixedPlaneConstraint< DataTypes >::VecCoord |
Reimplemented from sofa::core::componentmodel::behavior::Constraint< DataTypes >.
Definition at line 49 of file FixedPlaneConstraint.h.
| typedef DataTypes::VecDeriv sofa::component::constraint::FixedPlaneConstraint< DataTypes >::VecDeriv |
Reimplemented from sofa::core::componentmodel::behavior::Constraint< DataTypes >.
Definition at line 50 of file FixedPlaneConstraint.h.
| sofa::component::constraint::FixedPlaneConstraint< DataTypes >::FixedPlaneConstraint | ( | ) | [inline] |
Definition at line 46 of file FixedPlaneConstraint.inl.
References sofa::component::constraint::FixedPlaneConstraint< DataTypes >::selectVerticesFromPlanes.
| sofa::component::constraint::FixedPlaneConstraint< DataTypes >::~FixedPlaneConstraint | ( | ) | [inline] |
Definition at line 56 of file FixedPlaneConstraint.inl.
| FixedPlaneConstraint< DataTypes > * sofa::component::constraint::FixedPlaneConstraint< DataTypes >::addConstraint | ( | int | index | ) | [inline] |
Definition at line 82 of file FixedPlaneConstraint.inl.
References sofa::component::constraint::FixedPlaneConstraint< DataTypes >::indices.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::selectVerticesAlongPlane().
| void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::draw | ( | ) | [inline, virtual] |
Render internal data of this object, for debugging purposes.
Reimplemented from sofa::core::objectmodel::BaseObject.
Definition at line 162 of file FixedPlaneConstraint.inl.
References sofa::core::objectmodel::BaseObject::getContext(), sofa::core::componentmodel::behavior::MechanicalState< TDataTypes >::getX(), sofa::helper::gl::glVertexT(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::indices, and sofa::core::componentmodel::behavior::Constraint< DataTypes >::mstate.
| void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::FPCRemovalFunction | ( | int | pointIndex, | |
| void * | param | |||
| ) | [inline, static, protected] |
Definition at line 73 of file FixedPlaneConstraint.inl.
References sofa::component::constraint::FixedPlaneConstraint< DataTypes >::removeConstraint().
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::init().
| bool sofa::component::constraint::FixedPlaneConstraint< DataTypes >::FPCTestNewPointFunction | ( | int | , | |
| void * | param, | |||
| const helper::vector< unsigned int > & | , | |||
| const helper::vector< double > & | ||||
| ) | [inline, static, protected] |
Definition at line 61 of file FixedPlaneConstraint.inl.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::init().
| void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::handleTopologyChange | ( | ) | [inline, virtual] |
Handle topological Changes.
Reimplemented from sofa::core::objectmodel::BaseObject.
Definition at line 152 of file FixedPlaneConstraint.inl.
References sofa::core::componentmodel::topology::BaseMeshTopology::firstChange(), sofa::core::componentmodel::behavior::Constraint< DataTypes >::getMState(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::indices, sofa::core::componentmodel::topology::BaseMeshTopology::lastChange(), and sofa::component::constraint::FixedPlaneConstraint< DataTypes >::topology.
| void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::init | ( | void | ) | [inline, virtual] |
Initialization method called at graph modification, during bottom-up traversal.
Reimplemented from sofa::core::componentmodel::behavior::Constraint< DataTypes >.
Definition at line 127 of file FixedPlaneConstraint.inl.
References sofa::component::constraint::FixedPlaneConstraint< DataTypes >::dmax, sofa::component::constraint::FixedPlaneConstraint< DataTypes >::dmin, sofa::component::constraint::FixedPlaneConstraint< DataTypes >::FPCRemovalFunction(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::FPCTestNewPointFunction(), sofa::core::objectmodel::BaseObject::getContext(), sofa::core::objectmodel::BaseContext::getMeshTopology(), sofa::core::objectmodel::Data< T >::getValue(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::indices, sofa::component::constraint::FixedPlaneConstraint< DataTypes >::selectVerticesAlongPlane(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::selectVerticesFromPlanes, sofa::component::topology::PointSubset::setRemovalFunction(), sofa::component::topology::PointSubset::setRemovalParameter(), sofa::component::topology::PointSubset::setTestFunction(), sofa::component::topology::PointSubset::setTestParameter(), and sofa::component::constraint::FixedPlaneConstraint< DataTypes >::topology.
| bool sofa::component::constraint::FixedPlaneConstraint< DataTypes >::isPointInPlane | ( | Coord | p | ) | [inline, protected] |
Definition at line 97 of file FixedPlaneConstraint.h.
References sofa::component::constraint::FixedPlaneConstraint< DataTypes >::direction, sofa::component::constraint::FixedPlaneConstraint< DataTypes >::dmax, sofa::component::constraint::FixedPlaneConstraint< DataTypes >::dmin, dot(), and sofa::core::objectmodel::Data< T >::getValue().
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::selectVerticesAlongPlane().
| virtual void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::projectPosition | ( | VecCoord & | ) | [inline, virtual] |
project x to constrained space (x models a position)
Implements sofa::core::componentmodel::behavior::Constraint< DataTypes >.
Definition at line 78 of file FixedPlaneConstraint.h.
| void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::projectResponse | ( | VecDeriv & | dx | ) | [inline, 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 Constraint::projectResponse() method.
Implements sofa::core::componentmodel::behavior::Constraint< DataTypes >.
Definition at line 96 of file FixedPlaneConstraint.inl.
References sofa::component::constraint::FixedPlaneConstraint< DataTypes >::direction, dot(), and sofa::component::constraint::FixedPlaneConstraint< DataTypes >::indices.
| virtual void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::projectVelocity | ( | VecDeriv & | ) | [inline, virtual] |
project dx to constrained space (dx models a velocity)
Implements sofa::core::componentmodel::behavior::Constraint< DataTypes >.
Definition at line 77 of file FixedPlaneConstraint.h.
| FixedPlaneConstraint< DataTypes > * sofa::component::constraint::FixedPlaneConstraint< DataTypes >::removeConstraint | ( | int | index | ) | [inline] |
Definition at line 89 of file FixedPlaneConstraint.inl.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::FPCRemovalFunction().
| void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::selectVerticesAlongPlane | ( | ) | [inline] |
Definition at line 116 of file FixedPlaneConstraint.inl.
References sofa::component::constraint::FixedPlaneConstraint< DataTypes >::addConstraint(), sofa::core::componentmodel::behavior::MechanicalState< TDataTypes >::getX(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::isPointInPlane(), and sofa::core::componentmodel::behavior::Constraint< DataTypes >::mstate.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::init().
| void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::setDirection | ( | Coord | dir | ) | [inline] |
Definition at line 108 of file FixedPlaneConstraint.inl.
References sofa::component::constraint::FixedPlaneConstraint< DataTypes >::direction.
| void sofa::component::constraint::FixedPlaneConstraint< DataTypes >::setDminAndDmax | ( | const Real | _dmin, | |
| const Real | _dmax | |||
| ) | [inline] |
Data<Coord> sofa::component::constraint::FixedPlaneConstraint< DataTypes >::direction [protected] |
direction on which the constraint applies
Definition at line 59 of file FixedPlaneConstraint.h.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::isPointInPlane(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::projectResponse(), and sofa::component::constraint::FixedPlaneConstraint< DataTypes >::setDirection().
Data<Real> sofa::component::constraint::FixedPlaneConstraint< DataTypes >::dmax [protected] |
Definition at line 64 of file FixedPlaneConstraint.h.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::init(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::isPointInPlane(), and sofa::component::constraint::FixedPlaneConstraint< DataTypes >::setDminAndDmax().
Data<Real> sofa::component::constraint::FixedPlaneConstraint< DataTypes >::dmin [protected] |
Definition at line 63 of file FixedPlaneConstraint.h.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::init(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::isPointInPlane(), and sofa::component::constraint::FixedPlaneConstraint< DataTypes >::setDminAndDmax().
Data<SetIndex> sofa::component::constraint::FixedPlaneConstraint< DataTypes >::indices [protected] |
Definition at line 57 of file FixedPlaneConstraint.h.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::addConstraint(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::draw(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::handleTopologyChange(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::init(), and sofa::component::constraint::FixedPlaneConstraint< DataTypes >::projectResponse().
bool sofa::component::constraint::FixedPlaneConstraint< DataTypes >::selectVerticesFromPlanes [protected] |
whether vertices should be selected from 2 parallel planes
Definition at line 61 of file FixedPlaneConstraint.h.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::FixedPlaneConstraint(), sofa::component::constraint::FixedPlaneConstraint< DataTypes >::init(), and sofa::component::constraint::FixedPlaneConstraint< DataTypes >::setDminAndDmax().
sofa::core::componentmodel::topology::BaseMeshTopology* sofa::component::constraint::FixedPlaneConstraint< DataTypes >::topology [protected] |
Definition at line 89 of file FixedPlaneConstraint.h.
Referenced by sofa::component::constraint::FixedPlaneConstraint< DataTypes >::handleTopologyChange(), and sofa::component::constraint::FixedPlaneConstraint< DataTypes >::init().
1.5.7.1