Quaternion used locally by InterpMotion. More...
#include <hpp/fcl/math/transform.h>
Public Member Functions | |
Quaternion3f () | |
Default quaternion is identity rotation. More... | |
Quaternion3f (FCL_REAL a, FCL_REAL b, FCL_REAL c, FCL_REAL d) | |
bool | isIdentity () const |
Whether the rotation is identity. More... | |
void | fromRotation (const Matrix3f &R) |
Matrix to quaternion. More... | |
void | toRotation (Matrix3f &R) const |
Quaternion to matrix. More... | |
void | fromEuler (FCL_REAL a, FCL_REAL b, FCL_REAL c) |
Euler to quaternion. More... | |
void | toEuler (FCL_REAL &a, FCL_REAL &b, FCL_REAL &c) const |
Quaternion to Euler. More... | |
void | fromAxes (const Vec3f axis[3]) |
Axes to quaternion. More... | |
void | toAxes (Vec3f axis[3]) const |
Axes to matrix. More... | |
void | fromAxisAngle (const Vec3f &axis, FCL_REAL angle) |
Axis and angle to quaternion. More... | |
void | toAxisAngle (Vec3f &axis, FCL_REAL &angle) const |
Quaternion to axis and angle. More... | |
FCL_REAL | dot (const Quaternion3f &other) const |
Dot product between quaternions. More... | |
Quaternion3f | operator+ (const Quaternion3f &other) const |
addition More... | |
const Quaternion3f & | operator+= (const Quaternion3f &other) |
Quaternion3f | operator- (const Quaternion3f &other) const |
minus More... | |
const Quaternion3f & | operator-= (const Quaternion3f &other) |
Quaternion3f | operator* (const Quaternion3f &other) const |
multiplication More... | |
const Quaternion3f & | operator*= (const Quaternion3f &other) |
Quaternion3f | operator- () const |
division More... | |
Quaternion3f | operator* (FCL_REAL t) const |
scalar multiplication More... | |
const Quaternion3f & | operator*= (FCL_REAL t) |
Quaternion3f & | conj () |
conjugate More... | |
Quaternion3f & | inverse () |
inverse More... | |
Vec3f | transform (const Vec3f &v) const |
rotate a vector More... | |
const FCL_REAL & | getW () const |
const FCL_REAL & | getX () const |
const FCL_REAL & | getY () const |
const FCL_REAL & | getZ () const |
FCL_REAL & | getW () |
FCL_REAL & | getX () |
FCL_REAL & | getY () |
FCL_REAL & | getZ () |
Vec3f | getColumn (std::size_t i) const |
Vec3f | getRow (std::size_t i) const |
bool | operator== (const Quaternion3f &other) const |
bool | operator!= (const Quaternion3f &other) const |
FCL_REAL | operator[] (std::size_t i) const |
Quaternion used locally by InterpMotion.
|
inline |
Default quaternion is identity rotation.
Quaternion3f& fcl::Quaternion3f::conj | ( | ) |
conjugate
Referenced by fcl::Transform3f::inverse().
FCL_REAL fcl::Quaternion3f::dot | ( | const Quaternion3f & | other | ) | const |
Dot product between quaternions.
void fcl::Quaternion3f::fromAxes | ( | const Vec3f | axis[3] | ) |
Axes to quaternion.
Axis and angle to quaternion.
Referenced by fcl::ScrewMotion::deltaRotation().
void fcl::Quaternion3f::fromRotation | ( | const Matrix3f & | R | ) |
Matrix to quaternion.
Referenced by fcl::Transform3f::setRotation(), fcl::Transform3f::setTransform(), fcl::Transform3f::Transform3f(), and fcl::TranslationMotion::TranslationMotion().
Vec3f fcl::Quaternion3f::getColumn | ( | std::size_t | i | ) | const |
Vec3f fcl::Quaternion3f::getRow | ( | std::size_t | i | ) | const |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Quaternion3f& fcl::Quaternion3f::inverse | ( | ) |
inverse
|
inline |
Whether the rotation is identity.
Referenced by fcl::CollisionObject::computeAABB(), and fcl::Transform3f::isIdentity().
|
inline |
Quaternion3f fcl::Quaternion3f::operator* | ( | const Quaternion3f & | other | ) | const |
multiplication
Quaternion3f fcl::Quaternion3f::operator* | ( | FCL_REAL | t | ) | const |
scalar multiplication
const Quaternion3f& fcl::Quaternion3f::operator*= | ( | const Quaternion3f & | other | ) |
const Quaternion3f& fcl::Quaternion3f::operator*= | ( | FCL_REAL | t | ) |
Quaternion3f fcl::Quaternion3f::operator+ | ( | const Quaternion3f & | other | ) | const |
addition
const Quaternion3f& fcl::Quaternion3f::operator+= | ( | const Quaternion3f & | other | ) |
Quaternion3f fcl::Quaternion3f::operator- | ( | const Quaternion3f & | other | ) | const |
minus
Quaternion3f fcl::Quaternion3f::operator- | ( | ) | const |
division
const Quaternion3f& fcl::Quaternion3f::operator-= | ( | const Quaternion3f & | other | ) |
|
inline |
|
inline |
void fcl::Quaternion3f::toAxes | ( | Vec3f | axis[3] | ) | const |
Axes to matrix.
Quaternion to axis and angle.
Referenced by fcl::ScrewMotion::computeScrewParameter().
Quaternion to Euler.
Referenced by fcl::SamplerSE3Euler::sample(), and fcl::SamplerSE3Euler_ball::sample().
void fcl::Quaternion3f::toRotation | ( | Matrix3f & | R | ) | const |
Quaternion to matrix.