#include <SolidTypes.h>

Public Member Functions | |
| void | clear () |
| SpatialVector () | |
| SpatialVector (const Vec &l, const Vec &f) | |
| SpatialVector & | operator+= (const SpatialVector &v) |
| SpatialVector | operator* (Real a) const |
| SpatialVector & | operator*= (Real a) |
| SpatialVector | operator+ (const SpatialVector &v) const |
| SpatialVector | operator- (const SpatialVector &v) const |
| SpatialVector | operator- () const |
| Real | operator* (const SpatialVector &v) const |
| Spatial dot product (cross terms). | |
| SpatialVector | cross (const SpatialVector &v) const |
| Spatial cross product. | |
| SpatialVector | operator* (const Mat66 &) const |
| product with a dense matrix | |
| Vec & | getLinearVelocity () |
| If the SpatialVector models a spatial velocity, then the linear velocity is the freeVec. | |
| const Vec & | getLinearVelocity () const |
| void | setLinearVelocity (const Vec &v) |
| Vec & | getAngularVelocity () |
| If the SpatialVector models a spatial velocity, then the angular velocity is the lineVec. | |
| const Vec & | getAngularVelocity () const |
| void | setAngularVelocity (const Vec &v) |
| Vec & | getTorque () |
| If the SpatialVector models a spatial force, then the torque is the freeVec. | |
| const Vec & | getTorque () const |
| void | setTorque (const Vec &v) |
| Vec & | getForce () |
| If the SpatialVector models a spatial force, then the torque is the lineVec. | |
| const Vec & | getForce () const |
| void | setForce (const Vec &v) |
Data Fields | |
| Vec | lineVec |
| Vec | freeVec |
Friends | |
| std::ostream & | operator<< (std::ostream &out, const SpatialVector &t) |
| write to an output stream | |
When representing a velocity, lineVec is the angular velocity and freeVec is the linear velocity. When representing a spatial force, lineVec is the force and freeVec is the torque.
Definition at line 75 of file SolidTypes.h.
| sofa::defaulttype::SolidTypes< R >::SpatialVector::SpatialVector | ( | ) | [inline] |
Definition at line 54 of file SolidTypes.inl.
Referenced by sofa::defaulttype::SolidTypes< R >::SpatialVector::cross(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator*(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator+(), and sofa::defaulttype::SolidTypes< R >::SpatialVector::operator-().
| sofa::defaulttype::SolidTypes< R >::SpatialVector::SpatialVector | ( | const Vec & | l, | |
| const Vec & | f | |||
| ) | [inline] |
| l | The line vector: angular velocity, or force | |
| f | The free vector: linear velocity, or torque |
Definition at line 58 of file SolidTypes.inl.
| void sofa::defaulttype::SolidTypes< R >::SpatialVector::clear | ( | ) | [inline] |
Definition at line 62 of file SolidTypes.inl.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| SolidTypes< R >::SpatialVector sofa::defaulttype::SolidTypes< R >::SpatialVector::cross | ( | const SpatialVector & | v | ) | const [inline] |
Spatial cross product.
Definition at line 116 of file SolidTypes.inl.
References sofa::defaulttype::cross(), sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::SpatialVector().
| const Vec& sofa::defaulttype::SolidTypes< R >::SpatialVector::getAngularVelocity | ( | ) | const [inline] |
Definition at line 138 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| Vec& sofa::defaulttype::SolidTypes< R >::SpatialVector::getAngularVelocity | ( | ) | [inline] |
If the SpatialVector models a spatial velocity, then the angular velocity is the lineVec.
Otherwise, the SpatialVector models a spatial force, and this method returns a force.
Definition at line 134 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
Referenced by sofa::component::contextobject::CoordinateSystem::apply().
| const Vec& sofa::defaulttype::SolidTypes< R >::SpatialVector::getForce | ( | ) | const [inline] |
Definition at line 167 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| Vec& sofa::defaulttype::SolidTypes< R >::SpatialVector::getForce | ( | ) | [inline] |
If the SpatialVector models a spatial force, then the torque is the lineVec.
Otherwise, the SpatialVector models a spatial velocity, and this method returns an angular velocity.
Definition at line 163 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| const Vec& sofa::defaulttype::SolidTypes< R >::SpatialVector::getLinearVelocity | ( | ) | const [inline] |
Definition at line 124 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec.
| Vec& sofa::defaulttype::SolidTypes< R >::SpatialVector::getLinearVelocity | ( | ) | [inline] |
If the SpatialVector models a spatial velocity, then the linear velocity is the freeVec.
Otherwise, the SpatialVector models a spatial force, and this method returns a torque.
Definition at line 120 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec.
Referenced by sofa::component::contextobject::CoordinateSystem::apply().
| const Vec& sofa::defaulttype::SolidTypes< R >::SpatialVector::getTorque | ( | ) | const [inline] |
Definition at line 153 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec.
| Vec& sofa::defaulttype::SolidTypes< R >::SpatialVector::getTorque | ( | ) | [inline] |
If the SpatialVector models a spatial force, then the torque is the freeVec.
Otherwise, the SpatialVector models a spatial velocity, and this method returns a linear velocity.
Definition at line 149 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec.
| SolidTypes< R >::SpatialVector sofa::defaulttype::SolidTypes< R >::SpatialVector::operator* | ( | const Mat66 & | m | ) | const [inline] |
product with a dense matrix
Definition at line 125 of file SolidTypes.inl.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| SolidTypes< R >::Real sofa::defaulttype::SolidTypes< R >::SpatialVector::operator* | ( | const SpatialVector & | v | ) | const [inline] |
Spatial dot product (cross terms).
Definition at line 108 of file SolidTypes.inl.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| SpatialVector sofa::defaulttype::SolidTypes< R >::SpatialVector::operator* | ( | Real | a | ) | const [inline] |
Definition at line 90 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::SpatialVector().
| SpatialVector& sofa::defaulttype::SolidTypes< R >::SpatialVector::operator*= | ( | Real | a | ) | [inline] |
Definition at line 96 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| SolidTypes< R >::SpatialVector sofa::defaulttype::SolidTypes< R >::SpatialVector::operator+ | ( | const SpatialVector & | v | ) | const [inline] |
Definition at line 89 of file SolidTypes.inl.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::SpatialVector().
| SolidTypes< R >::SpatialVector & sofa::defaulttype::SolidTypes< R >::SpatialVector::operator+= | ( | const SpatialVector & | v | ) | [inline] |
Definition at line 68 of file SolidTypes.inl.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| SolidTypes< R >::SpatialVector sofa::defaulttype::SolidTypes< R >::SpatialVector::operator- | ( | ) | const [inline] |
Definition at line 101 of file SolidTypes.inl.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::SpatialVector().
| SolidTypes< R >::SpatialVector sofa::defaulttype::SolidTypes< R >::SpatialVector::operator- | ( | const SpatialVector & | v | ) | const [inline] |
Definition at line 95 of file SolidTypes.inl.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec, sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec, and sofa::defaulttype::SolidTypes< R >::SpatialVector::SpatialVector().
| void sofa::defaulttype::SolidTypes< R >::SpatialVector::setAngularVelocity | ( | const Vec & | v | ) | [inline] |
Definition at line 142 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| void sofa::defaulttype::SolidTypes< R >::SpatialVector::setForce | ( | const Vec & | v | ) | [inline] |
Definition at line 171 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec.
| void sofa::defaulttype::SolidTypes< R >::SpatialVector::setLinearVelocity | ( | const Vec & | v | ) | [inline] |
Definition at line 128 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec.
| void sofa::defaulttype::SolidTypes< R >::SpatialVector::setTorque | ( | const Vec & | v | ) | [inline] |
Definition at line 157 of file SolidTypes.h.
References sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec.
| std::ostream& operator<< | ( | std::ostream & | out, | |
| const SpatialVector & | t | |||
| ) | [friend] |
| Vec sofa::defaulttype::SolidTypes< R >::SpatialVector::freeVec |
Definition at line 79 of file SolidTypes.h.
Referenced by sofa::defaulttype::SolidTypes< R >::SpatialVector::clear(), sofa::defaulttype::SolidTypes< R >::SpatialVector::cross(), sofa::defaulttype::SolidTypes< R >::dyad(), sofa::defaulttype::SolidTypes< R >::SpatialVector::getLinearVelocity(), sofa::defaulttype::SolidTypes< R >::SpatialVector::getTorque(), sofa::defaulttype::SolidTypes< R >::ArticulatedInertia::operator*(), sofa::defaulttype::SolidTypes< R >::RigidInertia::operator*(), sofa::defaulttype::SolidTypes< R >::Transform::operator*(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator*(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator*=(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator+(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator+=(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator-(), sofa::defaulttype::SolidTypes< R >::SpatialVector::setLinearVelocity(), sofa::defaulttype::SolidTypes< R >::SpatialVector::setTorque(), and sofa::defaulttype::SolidTypes< R >::Transform::Transform().
| Vec sofa::defaulttype::SolidTypes< R >::SpatialVector::lineVec |
Definition at line 78 of file SolidTypes.h.
Referenced by sofa::defaulttype::SolidTypes< R >::SpatialVector::clear(), sofa::defaulttype::SolidTypes< R >::SpatialVector::cross(), sofa::defaulttype::SolidTypes< R >::dyad(), sofa::defaulttype::SolidTypes< R >::SpatialVector::getAngularVelocity(), sofa::defaulttype::SolidTypes< R >::SpatialVector::getForce(), sofa::defaulttype::SolidTypes< R >::ArticulatedInertia::operator*(), sofa::defaulttype::SolidTypes< R >::RigidInertia::operator*(), sofa::defaulttype::SolidTypes< R >::Transform::operator*(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator*(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator*=(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator+(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator+=(), sofa::defaulttype::SolidTypes< R >::SpatialVector::operator-(), sofa::defaulttype::SolidTypes< R >::SpatialVector::setAngularVelocity(), sofa::defaulttype::SolidTypes< R >::SpatialVector::setForce(), and sofa::defaulttype::SolidTypes< R >::Transform::Transform().
1.5.7.1