Base class for quaternion expressions. More...
#include <ForwardDeclarations.h>
Public Types | |
enum | { Flags = Eigen::internal::traits<Derived>::Flags } |
typedef AngleAxis< Scalar > | AngleAxisType |
typedef RotationBase< Derived, 3 > | Base |
typedef internal::traits< Derived >::Coefficients | Coefficients |
typedef Coefficients::CoeffReturnType | CoeffReturnType |
typedef Matrix< Scalar, 3, 3 > | Matrix3 |
typedef internal::conditional< bool(internal::traits< Derived >::Flags &LvalueBit), Scalar &, CoeffReturnType >::type | NonConstCoeffReturnType |
typedef NumTraits< Scalar >::Real | RealScalar |
typedef internal::traits< Derived >::Scalar | Scalar |
typedef Matrix< Scalar, 3, 1 > | Vector3 |
Static Public Member Functions | |
static EIGEN_DEVICE_FUNC Quaternion< Scalar > | Identity () |
Friends | |
EIGEN_DEVICE_FUNC friend Transform< Scalar, Dim, Affine > | operator* (const DiagonalMatrix< Scalar, Dim > &l, const Derived &r) |
template<typename OtherDerived > | |
EIGEN_DEVICE_FUNC RotationMatrixType | operator* (const EigenBase< OtherDerived > &l, const Derived &r) |
std::ostream & | operator<< (std::ostream &s, const QuaternionBase< Derived > &q) |
Base class for quaternion expressions.
\geometry_module
Derived | derived type (CRTP) |
Definition at line 288 of file ForwardDeclarations.h.
the equivalent angle-axis type
Definition at line 61 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
typedef RotationBase<Derived, 3> Eigen::QuaternionBase::Base |
Definition at line 38 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
typedef internal::traits<Derived>::Coefficients Eigen::QuaternionBase::Coefficients |
Definition at line 45 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
typedef Coefficients::CoeffReturnType Eigen::QuaternionBase::CoeffReturnType |
Definition at line 46 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
typedef Matrix<Scalar,3,3> Eigen::QuaternionBase::Matrix3 |
the equivalent rotation matrix type
Definition at line 59 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
typedef internal::conditional<bool(internal::traits<Derived>::Flags&LvalueBit), Scalar&, CoeffReturnType>::type Eigen::QuaternionBase::NonConstCoeffReturnType |
Definition at line 48 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
typedef NumTraits<Scalar>::Real Eigen::QuaternionBase::RealScalar |
Definition at line 44 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
typedef internal::traits<Derived>::Scalar Eigen::QuaternionBase::Scalar |
Definition at line 43 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
typedef Matrix<Scalar,3,1> Eigen::QuaternionBase::Vector3 |
the type of a 3D vector
Definition at line 57 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
anonymous enum |
Enumerator | |
---|---|
Flags |
Definition at line 51 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE QuaternionBase< Derived >::Vector3 Eigen::QuaternionBase::_transformVector | ( | const Vector3 & | v | ) | const |
return the result vector of v through the rotation
Rotation of a vector by a quaternion.
Definition at line 531 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
EIGEN_DEVICE_FUNC Scalar Eigen::QuaternionBase::angularDistance | ( | const QuaternionBase< OtherDerived > & | other | ) | const |
|
inline |
Definition at line 764 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 201 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 208 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 93 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 90 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
*this
which is equal to the multiplicative inverse if the quaternion is normalized. The conjugate of a quaternion represents the opposite rotation.Definition at line 751 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 42 of file RotationBase.h.
|
inline |
Definition at line 41 of file RotationBase.h.
|
inline |
*this
and other Geometrically speaking, the dot product of two unit quaternions corresponds to the cosine of half the angle between the two rotations. Definition at line 139 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inlinestatic |
Definition at line 111 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
*this
Note that in most cases, i.e., if you simply want the opposite rotation, and/or the quaternion is normalized, then it is enough to use the conjugate.Definition at line 720 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
true
if *this
is approximately equal to other, within the precision determined by prec.Definition at line 182 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 125 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Normalizes the quaternion *this
Definition at line 129 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
*this
Definition at line 132 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
*this
and other are not exactly equal to each other. Definition at line 174 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
*this
with a generic expression e e can be:Definition at line 71 of file RotationBase.h.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Quaternion<typename internal::traits<Derived>::Scalar> Eigen::QuaternionBase::operator* | ( | const QuaternionBase< OtherDerived > & | other | ) | const |
Definition at line 505 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Quaternion<Scalar> Eigen::QuaternionBase::operator* | ( | const QuaternionBase< OtherDerived > & | q | ) | const |
|
inline |
*this
with a transformation t Definition at line 89 of file RotationBase.h.
|
inline |
*this
with a translation t Definition at line 56 of file RotationBase.h.
|
inline |
*this
with a uniform scaling s Definition at line 60 of file RotationBase.h.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Derived & Eigen::QuaternionBase::operator*= | ( | const QuaternionBase< OtherDerived > & | other | ) |
Definition at line 516 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
EIGEN_DEVICE_FUNC Derived& Eigen::QuaternionBase::operator= | ( | const AngleAxisType & | aa | ) |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Derived& Eigen::QuaternionBase::operator= | ( | const AngleAxisType & | aa | ) |
Set *this
from an angle-axis aa and returns a reference to *this
Definition at line 561 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Set *this
from the expression xpr:
Definition at line 579 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
EIGEN_DEVICE_FUNC Derived& Eigen::QuaternionBase::operator= | ( | const MatrixBase< OtherDerived > & | m | ) |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE QuaternionBase<Derived>& Eigen::QuaternionBase::operator= | ( | const QuaternionBase< Derived > & | other | ) |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE QuaternionBase<Derived>& Eigen::QuaternionBase::operator= | ( | const QuaternionBase< Derived > & | other | ) |
Definition at line 544 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Derived & Eigen::QuaternionBase::operator= | ( | const QuaternionBase< OtherDerived > & | other | ) |
Definition at line 552 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
*this
and other are all exactly equal. Definition at line 166 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Sets *this
to be a quaternion representing a rotation between the two arbitrary vectors a and b. In other words, the built rotation represent a rotation sending the line of direction a to the line of direction b, both lines passing through the origin.
*this
.Note that the two input vectors do not have to be normalized, and do not need to have the same norm.
Definition at line 638 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 115 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
EIGEN_DEVICE_FUNC Quaternion<Scalar> Eigen::QuaternionBase::slerp | ( | const Scalar & | t, |
const QuaternionBase< OtherDerived > & | other | ||
) | const |
EIGEN_DEVICE_FUNC Quaternion<typename internal::traits<Derived>::Scalar> Eigen::QuaternionBase::slerp | ( | const Scalar & | t, |
const QuaternionBase< OtherDerived > & | other | ||
) | const |
*this
and other at the parameter t in [0;1].This represents an interpolation for a constant motion between *this
and other, see also http://en.wikipedia.org/wiki/Slerp.
Definition at line 782 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 120 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Convert the quaternion to a 3x3 rotation matrix. The quaternion is required to be normalized, otherwise the result is undefined.
Definition at line 592 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 87 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
Definition at line 84 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
w
coefficient (if Derived is a non-const lvalue) Definition at line 81 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
w
coefficient Definition at line 72 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
x
coefficient (if Derived is a non-const lvalue) Definition at line 75 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
x
coefficient Definition at line 66 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
y
coefficient (if Derived is a non-const lvalue) Definition at line 77 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
y
coefficient Definition at line 68 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
z
coefficient (if Derived is a non-const lvalue) Definition at line 79 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
inline |
z
coefficient Definition at line 70 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.
|
friend |
Definition at line 80 of file RotationBase.h.
|
friend |
Definition at line 76 of file RotationBase.h.
|
friend |
Definition at line 215 of file 3rdparty/Eigen/Eigen/src/Geometry/Quaternion.h.