Rigid Body Dynamics Library
|
Compact representation of spatial transformations. More...
#include <SpatialAlgebraOperators.h>
Public Member Functions | |
SpatialTransform () | |
SpatialTransform (const Matrix3d &rotation, const Vector3d &translation) | |
SpatialVector | apply (const SpatialVector &v_sp) |
SpatialVector | applyTranspose (const SpatialVector &f_sp) |
SpatialRigidBodyInertia | apply (const SpatialRigidBodyInertia &rbi) |
SpatialRigidBodyInertia | applyTranspose (const SpatialRigidBodyInertia &rbi) |
SpatialVector | applyAdjoint (const SpatialVector &f_sp) |
SpatialMatrix | toMatrix () const |
SpatialMatrix | toMatrixAdjoint () const |
SpatialMatrix | toMatrixTranspose () const |
SpatialTransform | inverse () const |
SpatialTransform | operator* (const SpatialTransform &XT) const |
void | operator*= (const SpatialTransform &XT) |
Data Fields | |
Matrix3d | E |
Vector3d | r |
Compact representation of spatial transformations.
Instead of using a verbose 6x6 matrix, this structure only stores a 3x3 matrix and a 3-d vector to store spatial transformations. It also encapsulates efficient operations such as concatenations and transformation of spatial vectors.
Definition at line 145 of file SpatialAlgebraOperators.h.
|
inline |
Definition at line 146 of file SpatialAlgebraOperators.h.
|
inline |
Definition at line 150 of file SpatialAlgebraOperators.h.
|
inline |
Same as X^* I X^{-1}
Definition at line 198 of file SpatialAlgebraOperators.h.
References SpatialRigidBodyInertia::h, SpatialRigidBodyInertia::Ixx, SpatialRigidBodyInertia::Iyx, SpatialRigidBodyInertia::Iyy, SpatialRigidBodyInertia::Izx, SpatialRigidBodyInertia::Izy, SpatialRigidBodyInertia::Izz, SpatialRigidBodyInertia::m, and RigidBodyDynamics::Math::VectorCrossMatrix().
|
inline |
Same as X * v.
Definition at line 159 of file SpatialAlgebraOperators.h.
|
inline |
Definition at line 233 of file SpatialAlgebraOperators.h.
|
inline |
Same as X^T I X
Definition at line 218 of file SpatialAlgebraOperators.h.
References SpatialRigidBodyInertia::h, SpatialRigidBodyInertia::Ixx, SpatialRigidBodyInertia::Iyx, SpatialRigidBodyInertia::Iyy, SpatialRigidBodyInertia::Izx, SpatialRigidBodyInertia::Izy, SpatialRigidBodyInertia::Izz, SpatialRigidBodyInertia::m, and RigidBodyDynamics::Math::VectorCrossMatrix().
|
inline |
Same as X^T * f.
Definition at line 179 of file SpatialAlgebraOperators.h.
|
inline |
Definition at line 295 of file SpatialAlgebraOperators.h.
|
inline |
Definition at line 302 of file SpatialAlgebraOperators.h.
References SpatialTransform::E, and SpatialTransform::r.
|
inline |
Definition at line 306 of file SpatialAlgebraOperators.h.
References SpatialTransform::E, and SpatialTransform::r.
|
inline |
Definition at line 247 of file SpatialAlgebraOperators.h.
|
inline |
Definition at line 263 of file SpatialAlgebraOperators.h.
|
inline |
Definition at line 279 of file SpatialAlgebraOperators.h.
Matrix3d E |
Definition at line 311 of file SpatialAlgebraOperators.h.
Vector3d r |
Definition at line 312 of file SpatialAlgebraOperators.h.