Rigid Body Dynamics Library
|
Quaternion that are used for singularity free joints. More...
#include <Quaternion.h>
Public Member Functions | |
Quaternion () | |
Quaternion (const Vector4d &vec4) | |
Quaternion (Scalar x, Scalar y, Scalar z, Scalar w) | |
Quaternion | operator* (const double &s) const |
Quaternion | operator* (const Quaternion &q) const |
Quaternion & | operator*= (const Quaternion &q) |
Quaternion | slerp (double alpha, const Quaternion &quat) const |
Matrix3d | toMatrix () const |
Quaternion | conjugate () const |
Quaternion | timeStep (const Vector3d &omega, double dt) |
Vector3d | rotate (const Vector3d &vec) const |
Vector4d | omegaToQDot (const Vector3d &omega) const |
Converts a 3d angular velocity vector into a 4d derivative of the components of the quaternion. More... | |
Public Member Functions inherited from Vector4_t | |
template<typename OtherDerived > | |
Vector4_t (const Eigen::MatrixBase< OtherDerived > &other) | |
template<typename OtherDerived > | |
Vector4_t & | operator= (const Eigen::MatrixBase< OtherDerived > &other) |
EIGEN_STRONG_INLINE | Vector4_t () |
EIGEN_STRONG_INLINE | Vector4_t (const double &v0, const double &v1, const double &v2, const double &v3) |
void | set (const double &v0, const double &v1, const double &v2, const double &v3) |
Static Public Member Functions | |
static Quaternion | fromGLRotate (double angle, double x, double y, double z) |
static Quaternion | fromAxisAngle (const Vector3d &axis, Scalar angle_rad) |
static Quaternion | fromMatrix (const Matrix3d &mat) |
static Quaternion | fromZYXAngles (const Vector3d &zyx_angles) |
static Quaternion | fromYXZAngles (const Vector3d &yxz_angles) |
static Quaternion | fromXYZAngles (const Vector3d &xyz_angles) |
Additional Inherited Members | |
Public Types inherited from Vector4_t | |
typedef Eigen::Vector4d | Base |
Quaternion that are used for singularity free joints.
order: x,y,z,w
Definition at line 22 of file Quaternion.h.
|
inline |
Definition at line 24 of file Quaternion.h.
|
inline |
Definition at line 27 of file Quaternion.h.
|
inline |
Definition at line 30 of file Quaternion.h.
|
inline |
Definition at line 176 of file Quaternion.h.
References Quaternion::Quaternion().
|
inlinestatic |
Definition at line 104 of file Quaternion.h.
References Quaternion::Quaternion(), std::cos(), and std::sin().
|
inlinestatic |
Definition at line 60 of file Quaternion.h.
References Quaternion::Quaternion(), std::cos(), and std::sin().
|
inlinestatic |
Definition at line 115 of file Quaternion.h.
References Quaternion::Quaternion(), and std::sqrt().
|
inlinestatic |
Definition at line 136 of file Quaternion.h.
References Quaternion::fromAxisAngle().
|
inlinestatic |
Definition at line 130 of file Quaternion.h.
References Quaternion::fromAxisAngle().
|
inlinestatic |
Definition at line 124 of file Quaternion.h.
References Quaternion::fromAxisAngle().
Converts a 3d angular velocity vector into a 4d derivative of the components of the quaternion.
omega | the angular velocity. |
Definition at line 208 of file Quaternion.h.
References Quaternion::Quaternion().
|
inline |
Definition at line 33 of file Quaternion.h.
References Quaternion::Quaternion().
|
inline |
This function is equivalent to multiplicate their corresponding rotation matrices
Definition at line 42 of file Quaternion.h.
References Quaternion::Quaternion().
|
inline |
Definition at line 50 of file Quaternion.h.
References Vector4_t::set().
Definition at line 189 of file Quaternion.h.
References Quaternion::conjugate().
|
inline |
Definition at line 70 of file Quaternion.h.
References Quaternion::Quaternion(), std::acos(), std::isnan(), std::sin(), and std::sqrt().
|
inline |
Definition at line 184 of file Quaternion.h.
References Quaternion::fromAxisAngle().
|
inline |
Definition at line 142 of file Quaternion.h.