#include <SparseGridSpringForceField.h>


Public Types | |
| typedef StiffSpringForceField < DataTypes > | Inherit |
| make the spring force field of a sparsegrid | |
| typedef DataTypes::VecCoord | VecCoord |
| typedef DataTypes::VecDeriv | VecDeriv |
| typedef DataTypes::Coord | Coord |
| typedef DataTypes::Deriv | Deriv |
| typedef Coord::value_type | Real |
Public Member Functions | |
| SparseGridSpringForceField (core::componentmodel::behavior::MechanicalState< DataTypes > *object1, core::componentmodel::behavior::MechanicalState< DataTypes > *object2) | |
| SparseGridSpringForceField () | |
| virtual void | parse (core::objectmodel::BaseObjectDescription *arg) |
| Parse the given description to assign values to this object's fields and potentially other parameters. | |
| Real | getStiffness () const |
| Real | getLinesStiffness () const |
| Real | getQuadsStiffness () const |
| Real | getCubesStiffness () const |
| void | setStiffness (Real val) |
| void | setLinesStiffness (Real val) |
| void | setQuadsStiffness (Real val) |
| void | setCubesStiffness (Real val) |
| Real | getDamping () const |
| Real | getLinesDamping () const |
| Real | getQuadsDamping () const |
| Real | getCubesDamping () const |
| void | setDamping (Real val) |
| void | setLinesDamping (Real val) |
| void | setQuadsDamping (Real val) |
| void | setCubesDamping (Real val) |
| virtual void | addForce (VecDeriv &f1, VecDeriv &f2, const VecCoord &x1, const VecCoord &x2, const VecDeriv &v1, const VecDeriv &v2) |
| Accumulate f corresponding to x,v. | |
| virtual void | addDForce (VecDeriv &df1, VecDeriv &df2, const VecDeriv &dx1, const VecDeriv &dx2, double kFactor, double bFactor) |
| Accumulate df corresponding to dx. | |
| virtual void | draw () |
| Render internal data of this object, for debugging purposes. | |
| void | setFileName (char *name) |
| char * | getFileName () const |
Protected Types | |
| typedef topology::MultiResSparseGridTopology::SparseGrid | Voxels |
| typedef topology::MultiResSparseGridTopology::SparseGrid::Index3D | Index3D |
Protected Attributes | |
| DataField< Real > | linesStiffness |
| DataField< Real > | linesDamping |
| DataField< Real > | quadsStiffness |
| DataField< Real > | quadsDamping |
| DataField< Real > | cubesStiffness |
| DataField< Real > | cubesDamping |
| DataField< std::string > | filename |
Definition at line 41 of file SparseGridSpringForceField.h.
| typedef DataTypes::Coord sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::Coord |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 48 of file SparseGridSpringForceField.h.
| typedef DataTypes::Deriv sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::Deriv |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 49 of file SparseGridSpringForceField.h.
typedef topology::MultiResSparseGridTopology::SparseGrid::Index3D sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::Index3D [protected] |
Definition at line 63 of file SparseGridSpringForceField.h.
| typedef StiffSpringForceField<DataTypes> sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::Inherit |
make the spring force field of a sparsegrid
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 45 of file SparseGridSpringForceField.h.
| typedef Coord::value_type sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::Real |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 50 of file SparseGridSpringForceField.h.
| typedef DataTypes::VecCoord sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::VecCoord |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 46 of file SparseGridSpringForceField.h.
| typedef DataTypes::VecDeriv sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::VecDeriv |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 47 of file SparseGridSpringForceField.h.
typedef topology::MultiResSparseGridTopology::SparseGrid sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::Voxels [protected] |
Definition at line 62 of file SparseGridSpringForceField.h.
Definition at line 67 of file SparseGridSpringForceField.h.
| sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::SparseGridSpringForceField | ( | ) | [inline] |
Definition at line 78 of file SparseGridSpringForceField.h.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addDForce | ( | VecDeriv & | df1, | |
| VecDeriv & | df2, | |||
| const VecDeriv & | dx1, | |||
| const VecDeriv & | dx2, | |||
| double | kFactor, | |||
| double | bFactor | |||
| ) | [inline, virtual] |
Accumulate df corresponding to dx.
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 236 of file SparseGridSpringForceField.inl.
References sofa::component::forcefield::StiffSpringForceField< DataTypes >::addSpringDForce(), sofa::component::forcefield::StiffSpringForceField< DataTypes >::dfdx, sofa::component::topology::MultiResSparseGridTopology::getDx(), sofa::component::topology::MultiResSparseGridTopology::getDy(), sofa::component::topology::MultiResSparseGridTopology::getDz(), sofa::component::topology::MultiResSparseGridTopology::getNbVoxels(), sofa::component::topology::MultiResSparseGridTopology::SparseGrid::getVoxelsMapBegin(), sofa::component::topology::MultiResSparseGridTopology::SparseGrid::getVoxelsMapEnd(), sofa::component::forcefield::SpringForceField< DataTypes >::Spring::initpos, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::kd, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::ks, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesDamping, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesStiffness, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m1, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m2, norm(), sofa::component::topology::MultiResSparseGridTopology::point(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsDamping, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsStiffness, sofa::component::topology::MultiResSparseGridTopology::resolution, sofa::component::forcefield::SpringForceField< DataTypes >::springs, and sofa::component::topology::MultiResSparseGridTopology::vectorSparseGrid.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addForce | ( | VecDeriv & | f1, | |
| VecDeriv & | f2, | |||
| const VecCoord & | x1, | |||
| const VecCoord & | x2, | |||
| const VecDeriv & | v1, | |||
| const VecDeriv & | v2 | |||
| ) | [inline, virtual] |
Accumulate f corresponding to x,v.
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 54 of file SparseGridSpringForceField.inl.
References sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::addForce(), sofa::component::forcefield::StiffSpringForceField< DataTypes >::addSpringForce(), sofa::component::forcefield::StiffSpringForceField< DataTypes >::dfdx, sofa::component::topology::MultiResSparseGridTopology::getDx(), sofa::component::topology::MultiResSparseGridTopology::getDy(), sofa::component::topology::MultiResSparseGridTopology::getDz(), sofa::component::topology::MultiResSparseGridTopology::getNbVoxels(), sofa::component::topology::MultiResSparseGridTopology::SparseGrid::getVoxelsMapBegin(), sofa::component::topology::MultiResSparseGridTopology::SparseGrid::getVoxelsMapEnd(), sofa::component::forcefield::SpringForceField< DataTypes >::Spring::initpos, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::kd, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::ks, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesDamping, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesStiffness, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m1, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m2, sofa::component::forcefield::StiffSpringForceField< DataTypes >::m_potentialEnergy, norm(), sofa::component::topology::MultiResSparseGridTopology::point(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsDamping, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsStiffness, sofa::component::topology::MultiResSparseGridTopology::resolution, sofa::component::forcefield::SpringForceField< DataTypes >::springs, and sofa::component::topology::MultiResSparseGridTopology::vectorSparseGrid.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::draw | ( | ) | [inline, virtual] |
Render internal data of this object, for debugging purposes.
Reimplemented from sofa::component::forcefield::SpringForceField< DataTypes >.
Definition at line 415 of file SparseGridSpringForceField.inl.
References sofa::core::objectmodel::BaseObject::getContext(), sofa::component::topology::MultiResSparseGridTopology::getDx(), sofa::component::topology::MultiResSparseGridTopology::getDy(), sofa::component::topology::MultiResSparseGridTopology::getDz(), sofa::component::topology::MultiResSparseGridTopology::SparseGrid::getVoxelsMapBegin(), sofa::component::topology::MultiResSparseGridTopology::SparseGrid::getVoxelsMapEnd(), sofa::helper::gl::glVertexT(), sofa::component::forcefield::SpringForceField< DataTypes >::Spring::initpos, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::kd, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::ks, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesDamping, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesStiffness, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m1, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m2, norm(), sofa::component::topology::MultiResSparseGridTopology::point(), sofa::component::topology::MultiResSparseGridTopology::resolution, and sofa::component::topology::MultiResSparseGridTopology::vectorSparseGrid.
| Real sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getCubesDamping | ( | ) | const [inline] |
Definition at line 118 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::cubesDamping.
| Real sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getCubesStiffness | ( | ) | const [inline] |
Definition at line 94 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::cubesStiffness.
| Real sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getDamping | ( | ) | const [inline] |
Definition at line 115 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesDamping.
| char* sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getFileName | ( | ) | const [inline] |
Definition at line 149 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::filename.
| Real sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getLinesDamping | ( | ) | const [inline] |
Definition at line 116 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesDamping.
| Real sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getLinesStiffness | ( | ) | const [inline] |
Definition at line 92 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesStiffness.
| Real sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getQuadsDamping | ( | ) | const [inline] |
Definition at line 117 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsDamping.
| Real sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getQuadsStiffness | ( | ) | const [inline] |
Definition at line 93 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsStiffness.
| Real sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getStiffness | ( | ) | const [inline] |
Definition at line 91 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesStiffness.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::parse | ( | core::objectmodel::BaseObjectDescription * | arg | ) | [inline, virtual] |
Parse the given description to assign values to this object's fields and potentially other parameters.
Reimplemented from sofa::component::forcefield::SpringForceField< DataTypes >.
Definition at line 42 of file SparseGridSpringForceField.inl.
References sofa::core::objectmodel::BaseObjectDescription::getAttribute(), sofa::component::forcefield::SpringForceField< DataTypes >::parse(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setDamping(), and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setStiffness().
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setCubesDamping | ( | Real | val | ) | [inline] |
Definition at line 133 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::cubesDamping.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setCubesStiffness | ( | Real | val | ) | [inline] |
Definition at line 109 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::cubesStiffness.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setDamping | ( | Real | val | ) | [inline] |
Definition at line 119 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::cubesDamping, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesDamping, and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsDamping.
Referenced by sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::parse().
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setFileName | ( | char * | name | ) | [inline] |
Definition at line 144 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::filename.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setLinesDamping | ( | Real | val | ) | [inline] |
Definition at line 125 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesDamping.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setLinesStiffness | ( | Real | val | ) | [inline] |
Definition at line 101 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesStiffness.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setQuadsDamping | ( | Real | val | ) | [inline] |
Definition at line 129 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsDamping.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setQuadsStiffness | ( | Real | val | ) | [inline] |
Definition at line 105 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsStiffness.
| void sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setStiffness | ( | Real | val | ) | [inline] |
Definition at line 95 of file SparseGridSpringForceField.h.
References sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::cubesStiffness, sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesStiffness, and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsStiffness.
Referenced by sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::parse().
DataField< Real > sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::cubesDamping [protected] |
Definition at line 59 of file SparseGridSpringForceField.h.
Referenced by sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getCubesDamping(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setCubesDamping(), and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setDamping().
DataField< Real > sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::cubesStiffness [protected] |
Definition at line 58 of file SparseGridSpringForceField.h.
Referenced by sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getCubesStiffness(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setCubesStiffness(), and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setStiffness().
DataField< std::string > sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::filename [protected] |
Definition at line 61 of file SparseGridSpringForceField.h.
Referenced by sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getFileName(), and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setFileName().
DataField< Real > sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesDamping [protected] |
Definition at line 55 of file SparseGridSpringForceField.h.
Referenced by sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::draw(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getDamping(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getLinesDamping(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setDamping(), and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setLinesDamping().
DataField< Real > sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::linesStiffness [protected] |
Definition at line 54 of file SparseGridSpringForceField.h.
Referenced by sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::draw(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getLinesStiffness(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getStiffness(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setLinesStiffness(), and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setStiffness().
DataField< Real > sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsDamping [protected] |
Definition at line 57 of file SparseGridSpringForceField.h.
Referenced by sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getQuadsDamping(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setDamping(), and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setQuadsDamping().
DataField< Real > sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::quadsStiffness [protected] |
Definition at line 56 of file SparseGridSpringForceField.h.
Referenced by sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::getQuadsStiffness(), sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setQuadsStiffness(), and sofa::component::forcefield::SparseGridSpringForceField< DataTypes >::setStiffness().
1.5.7.1