Namespace inertialsim::geometry::quaternion¶
Namespace List > inertialsim > geometry > quaternion
Public Functions¶
| Type | Name |
|---|---|
| Vector3D | Apply (const Quaternion & quaternion, const Vector3D & vector) Apply quaternion rotation to a vector. |
| Quaternion | Compose (const Quaternion & q2, const Quaternion & q1) Compose two quaternions. |
| Quaternion | Conjugate (const Quaternion & quaternion) Conjugate of a quaternion. |
| Quaternion | FromAxisAngle (const Vector3D & axis, const Scalar1D & angle, bool passive=false) Quaternion representation from axis and angle of rotation. |
| Quaternion | FromEuler (const EulerAngles & euler, const std::string & sequence) Quaternion representation from Euler angles. |
| Quaternion | FromMatrix (const RotationMatrixArray & matrix) Quaternion representation from rotation matrix. |
| Quaternion | FromQuaternion (const Quaternion & quaternion, bool scalar_last=false) Quaternion representation from quaternion. |
| Quaternion | FromRotationVector (const RotationVector & rotation_vector, bool passive=false) Quaternion representation from rotation vector. |
| Quaternion | Validate (const Quaternion & quaternion, bool scalar_last=false) Validates inputs meet quaternion conventions. |
Public Functions Documentation¶
function Apply¶
Apply quaternion rotation to a vector.
Vector3D inertialsim::geometry::quaternion::Apply (
const Quaternion & quaternion,
const Vector3D & vector
)
Parameters:
quaternionQuaternion(s) (4, N).vectorVector(s) (3, N).
Returns:
Rotated vector(s) (3, N).
function Compose¶
Compose two quaternions.
Quaternion inertialsim::geometry::quaternion::Compose (
const Quaternion & q2,
const Quaternion & q1
)
Parameters:
Returns:
Composed quaternion q3 = q2*q1 (4, N).
function Conjugate¶
Conjugate of a quaternion.
Parameters:
quaternionQuaternion(s) (4, N).
Returns:
Conjugated quaternion(s) (4, N).
function FromAxisAngle¶
Quaternion representation from axis and angle of rotation.
Quaternion inertialsim::geometry::quaternion::FromAxisAngle (
const Vector3D & axis,
const Scalar1D & angle,
bool passive=false
)
Parameters:
axisUnit vector(s) representing the axis of rotation (3, N).angleAngle(s) which are applied around the corresponding axis (N).passiveInterpret the rotation as passive.
Returns:
Quaternion(s) (4, N).
function FromEuler¶
Quaternion representation from Euler angles.
Quaternion inertialsim::geometry::quaternion::FromEuler (
const EulerAngles & euler,
const std::string & sequence
)
Parameters:
eulerEuler angles (3, N).sequenceEuler angle rotation sequence (e.g., "XYZ").
Returns:
Quaternion(s) (4, N).
function FromMatrix¶
Quaternion representation from rotation matrix.
Parameters:
matrixVector of rotation matrices.
Returns:
Quaternion(s) (N, 4).
function FromQuaternion¶
Quaternion representation from quaternion.
Quaternion inertialsim::geometry::quaternion::FromQuaternion (
const Quaternion & quaternion,
bool scalar_last=false
)
Parameters:
quaternionQuaternion(s) (4, N).scalar_lastIf true, assume scalar is the last element.
Returns:
Validated quaternion(s) (4, N).
function FromRotationVector¶
Quaternion representation from rotation vector.
Quaternion inertialsim::geometry::quaternion::FromRotationVector (
const RotationVector & rotation_vector,
bool passive=false
)
Parameters:
rotation_vectorRotation vector(s) (3, N).passiveInterpret the rotation as passive.
Returns:
Quaternion(s) (4, N).
function Validate¶
Validates inputs meet quaternion conventions.
Quaternion inertialsim::geometry::quaternion::Validate (
const Quaternion & quaternion,
bool scalar_last=false
)
Parameters:
quaternionQuaternion(s) (4, N).scalar_lastIf true, assume scalar is the last element.
Returns:
The validated quaternion(s) (4, N), with scalar first and positive.
The documentation for this class was generated from the following file cpp/include/inertialsim/geometry/rotation_conversions/quaternion.h