#include <TriangleBendingSprings.h>


Public Types | |
| typedef DataTypes::Real | Real |
| typedef DataTypes::VecCoord | VecCoord |
Public Member Functions | |
| TriangleBendingSprings () | |
| ~TriangleBendingSprings () | |
| virtual void | init () |
| Searches triangle topology and creates the bending springs. | |
Protected Types | |
| typedef std::pair< unsigned, unsigned > | IndexPair |
Protected Member Functions | |
| void | addSpring (unsigned, unsigned) |
| void | registerTriangle (unsigned, unsigned, unsigned, std::map< IndexPair, unsigned > &) |
Protected Attributes | |
| component::MechanicalObject < DataTypes > * | dof |
The springs connect the vertices not belonging to the common edge. It compresses when the surface bends along the common edge.
Definition at line 60 of file TriangleBendingSprings.h.
typedef std::pair<unsigned,unsigned> sofa::component::forcefield::TriangleBendingSprings< DataTypes >::IndexPair [protected] |
Definition at line 78 of file TriangleBendingSprings.h.
| typedef DataTypes::Real sofa::component::forcefield::TriangleBendingSprings< DataTypes >::Real |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 63 of file TriangleBendingSprings.h.
| typedef DataTypes::VecCoord sofa::component::forcefield::TriangleBendingSprings< DataTypes >::VecCoord |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 64 of file TriangleBendingSprings.h.
| sofa::component::forcefield::TriangleBendingSprings< DataTypes >::TriangleBendingSprings | ( | ) | [inline] |
Definition at line 55 of file TriangleBendingSprings.inl.
| sofa::component::forcefield::TriangleBendingSprings< DataTypes >::~TriangleBendingSprings | ( | ) | [inline] |
Definition at line 63 of file TriangleBendingSprings.inl.
| void sofa::component::forcefield::TriangleBendingSprings< DataTypes >::addSpring | ( | unsigned | a, | |
| unsigned | b | |||
| ) | [inline, protected] |
Definition at line 67 of file TriangleBendingSprings.inl.
References sofa::component::forcefield::TriangleBendingSprings< DataTypes >::dof, sofa::component::forcefield::SpringForceField< DataTypes >::kd, sofa::component::forcefield::SpringForceField< DataTypes >::ks, and norm().
Referenced by sofa::component::forcefield::TriangleBendingSprings< DataTypes >::registerTriangle().
| void sofa::component::forcefield::TriangleBendingSprings< DataTypes >::init | ( | void | ) | [inline, virtual] |
Searches triangle topology and creates the bending springs.
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 126 of file TriangleBendingSprings.inl.
References sofa::component::forcefield::SpringForceField< DataTypes >::clear(), sofa::component::forcefield::TriangleBendingSprings< DataTypes >::dof, sofa::core::objectmodel::BaseObject::getContext(), sofa::core::objectmodel::BaseContext::getMechanicalState(), sofa::core::objectmodel::BaseContext::getMeshTopology(), sofa::core::componentmodel::topology::BaseMeshTopology::getQuads(), sofa::core::componentmodel::topology::BaseMeshTopology::getTriangles(), sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate1, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate2, and sofa::component::forcefield::TriangleBendingSprings< DataTypes >::registerTriangle().
| void sofa::component::forcefield::TriangleBendingSprings< DataTypes >::registerTriangle | ( | unsigned | a, | |
| unsigned | b, | |||
| unsigned | c, | |||
| std::map< IndexPair, unsigned > & | edgeMap | |||
| ) | [inline, protected] |
Definition at line 78 of file TriangleBendingSprings.inl.
References sofa::component::forcefield::TriangleBendingSprings< DataTypes >::addSpring().
Referenced by sofa::component::forcefield::TriangleBendingSprings< DataTypes >::init().
component::MechanicalObject<DataTypes>* sofa::component::forcefield::TriangleBendingSprings< DataTypes >::dof [protected] |
Definition at line 81 of file TriangleBendingSprings.h.
Referenced by sofa::component::forcefield::TriangleBendingSprings< DataTypes >::addSpring(), and sofa::component::forcefield::TriangleBendingSprings< DataTypes >::init().
1.5.7.1