|
SBMatrix33 * | orientation |
| The pointer to the orientation of the spatial transform.
|
|
SBPosition3 * | position |
| The pointer to the position of the spatial transform.
|
|
SBVector3 * | scale |
| The pointer to the scale of the spatial transform.
|
|
static const SBDTypeSpatialTransform | zero |
| The zero spatial transform.
|
|
static const SBDTypeSpatialTransform | identity |
| The identity spatial transform.
|
|
SBVector3 | getE1 () const |
| Returns the first column of the orientation matrix.
|
|
SBVector3 | getE2 () const |
| Returns the second column of the orientation matrix.
|
|
SBVector3 | getE3 () const |
| Returns the third column of the orientation matrix.
|
|
SBPosition3 | getE4 () const |
| Returns the position vector.
|
|
SBVector3 | getE5 () const |
| Returns the scale vector.
|
|
void | setE1 (const SBVector3 &v) |
| Sets the first column of the orientation matrix to v .
|
|
void | setE2 (const SBVector3 &v) |
| Sets the second column of the orientation matrix to v .
|
|
void | setE3 (const SBVector3 &v) |
| Sets the third column of the orientation matrix to v .
|
|
void | setE4 (const SBPosition3 &p) |
| Sets the position vector to p .
|
|
void | setE5 (const SBVector3 &p) |
| Sets the scale vector to p .
|
|
|
| SBDTypeSpatialTransform () |
| Constructs an identity transform.
|
|
| SBDTypeSpatialTransform (const SBDTypeSpatialTransform &transform) |
| Copy constructor.
|
|
| SBDTypeSpatialTransform (SBDTypeSpatialTransform &&transform) |
| Move constructor.
|
|
| SBDTypeSpatialTransform (const SBPosition3 &position) |
| Constructs a transform from a position vector, the orientation matrix is set to identity.
|
|
| SBDTypeSpatialTransform (const SBMatrix33 &orientation) |
| Constructs a transform from an orientation matrix, the position vector is set to zero.
|
|
| SBDTypeSpatialTransform (const SBMatrix33 &orientation, const SBPosition3 &position) |
| Constructs a transform from an orientation matrix and a position vector.
|
|
| SBDTypeSpatialTransform (const SBMatrix33 &orientation, const SBPosition3 &position, const SBVector3 &scale) |
| Constructs a transform from an orientation matrix, a position vector and a scale .
|
|
| ~SBDTypeSpatialTransform () |
| Destroys the spatial transform.
|
|
|
void | transformPoint (const SBPosition3 &p, SBPosition3 &result) const |
| Transforms the point p into the point result .
|
|
void | transformVelocity (const SBVelocity6 &velocityA, SBVelocity6 &velocityB) const |
| Transforms the spatial velocity velocityA into the spatial velocity velocityB .
|
|
void | transformAcceleration (const SBAcceleration6 &accelerationA, SBAcceleration6 &accelerationB) const |
| Transforms the spatial acceleration accelerationA into the spatial acceleration accelerationB .
|
|
void | inverseTransformVelocity (const SBVelocity6 &motionA, SBVelocity6 &motionB) const |
| Transforms the spatial velocity velocityA into the spatial velocity velocityB by applying the inverse of this transform.
|
|
void | inverseTransformAcceleration (const SBAcceleration6 &motionA, SBAcceleration6 &motionB) const |
| Transforms the spatial acceleration accelerationA into the spatial acceleration accelerationB by applying the inverse of this transform.
|
|
void | transformForce (const SBForce6 &forceA, SBForce6 &forceB) const |
| Transforms the spatial force forceA into the spatial force forceB .
|
|
void | transformInverseInertia (const SBInverseInertia66 &phiA, SBInverseInertia66 &phiB) const |
| Transforms the inverse inertia phiA into the inverse inertia phiB .
|
|
void | transformInverseInertiaLeft (const SBInverseInertia66 &phi, SBInverseInertia66 &result) const |
| Left-multiplies the inverse inertia phi by this spatial transform and stores the result in result .
|
|
void | transformInverseInertiaRight (const SBInverseInertia66 &phi, SBInverseInertia66 &result) const |
| Right-multiplies the inverse inertia phi by this spatial transform and stores the result in result .
|
|
void | transformInverseInertiaTransposeRight (const SBInverseInertia66 &phi, SBInverseInertia66 &result) const |
| Right-multiplies the transpose of the inverse inertia phi by this spatial transform and stores the result in result .
|
|
void | transformInertia (const SBInertia66 &IA, SBInertia66 &IB) const |
| Transforms the inertia IA by this spatial transform and stores the result in IB .
|
|
void | transformInertiaLeft (const SBInertia66 &I, SBInertia66 &result) const |
| Left-multiplies the inertia I by this spatial transform and stores the result in result .
|
|
void | transformInertiaRight (const SBInertia66 &I, SBInertia66 &result) const |
| Right-multiplies the inertia I by this spatial transform and stores the result in result .
|
|
This class handles rigid body transforms, and includes some useful functions to treat the transform either as a regular 3D transform (e.g. to transform points) or as a spatial transform (e.g. to transform spatial velocities, spatial accelerations, spatial inertias, etc.). A spatial transform is composed of an orientation
part (SBMatrix33) and a position
part (SBPosition3).
Short name: SBSpatialTransform
- See also
- The SBDType library
-
SBDTypePhysicalVector3
-
SBDTypeMatrix33