OSVR-Core
|
Contained cached computed values. More...
#include <MatrixExponentialMap.h>
Public Member Functions | |
template<typename Derived > | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | ExponentialMapData (Eigen::MatrixBase< Derived > const &omega) |
Construct from a matrixy-thing: should be a 3d vector containing a matrix-exponential-map rotation formalism. More... | |
ExponentialMapData & | operator= (ExponentialMapData const &other) |
assignment operator - its presence is an optimization only. | |
ExponentialMapData & | operator= (ExponentialMapData &&other) |
move-assignment operator - its presence is an optimization only. | |
template<typename Derived > | |
void | reset (Eigen::MatrixBase< Derived > const &omega) |
Eigen::Matrix3d const & | getBigOmega () |
Gets the "capital omega" skew-symmetrix matrix. More... | |
double | getTheta () |
Gets the rotation angle of a rotation vector. More... | |
Eigen::Matrix3d const & | getRotationMatrix () |
Converts a rotation vector to a rotation matrix: Uses Rodrigues' formula, and the first two terms of the Taylor expansions of the trig functions (so as to be nonsingular as the angle goes to zero). More... | |
Eigen::Quaterniond const & | getQuaternion () |
Contained cached computed values.
|
inlineexplicit |
Construct from a matrixy-thing: should be a 3d vector containing a matrix-exponential-map rotation formalism.
|
inline |
Gets the "capital omega" skew-symmetrix matrix.
(computation is cached)
|
inline |
Converts a rotation vector to a rotation matrix: Uses Rodrigues' formula, and the first two terms of the Taylor expansions of the trig functions (so as to be nonsingular as the angle goes to zero).
(computation is cached)
two-term taylor approx of sin(theta)/theta
two-term taylor approx of (1-cos(theta))/theta
|
inline |
Gets the rotation angle of a rotation vector.
(computation is cached)
|
inline |
Using assignment operator to be sure I didn't miss a flag.