|
| | SO3 (const Mat3 &R=Mat3::Identity()) |
| |
| | SO3 (const Mat31 &w) |
| |
| | SO3 (const SO3 &R) |
| |
| template<typename OtherDerived > |
| | SO3 (const Eigen::MatrixBase< OtherDerived > &rhs) |
| |
| SO3 & | operator= (const SO3 &rhs) |
| |
| SO3 | operator* (const SO3 &rhs) const |
| |
| SO3 | mul (const SO3 &rhs) const |
| |
| void | update_lhs (const Mat31 &dw) |
| |
| void | update_rhs (const Mat31 &dw) |
| |
| void | exp (const Mat3 &w_hat) |
| |
| Mat3 | ln (double *o=nullptr) const |
| |
| Mat31 | ln_vee () const |
| |
| SO3 | inv (void) const |
| |
| Mat3 | adj () const |
| |
| Mat3 | R () const |
| |
| Mat3 & | ref2R () |
| |
|
double | distance (const SO3 &rhs) const |
| |
|
void | print (void) const |
| |
|
void | print_lie (void) const |
| |
| std::string | toString () const |
| | Generates string representation of the SO3 object. More...
|
| |
◆ SO3() [1/4]
| SO3::SO3 |
( |
const Mat3 & |
R = Mat3::Identity() | ) |
|
Constructor from a Matrix transformation
◆ SO3() [2/4]
| SO3::SO3 |
( |
const Mat31 & |
w | ) |
|
Constructor, requires the Lie algebra w so3 representing the rotation around the identity, by default generates R = exp(0^) = I
◆ SO3() [3/4]
| SO3::SO3 |
( |
const SO3 & |
R | ) |
|
Constructor from an SO3 transformation
◆ SO3() [4/4]
template<typename OtherDerived >
| SO3::SO3 |
( |
const Eigen::MatrixBase< OtherDerived > & |
rhs | ) |
|
This constructor allows to construct from Eigen expressions Eigen suggestion: TopicCustomizingEigen.html
◆ adj()
◆ exp()
| void SO3::exp |
( |
const Mat3 & |
w_hat | ) |
|
Exponential mapping of a skew symetric matrix in so3. The Rodrigues formula provides an exact solution to the Taylor expansion of exp(A) = I + A + c2*A^2 + ... exp(A) = I + c1*w^ + c2*(w^)^2, where o = norm(w), c1 =sin(o)/o and c2 = (1 - cos(o))/o^2
◆ inv()
| SO3 SO3::inv |
( |
void |
| ) |
const |
◆ ln()
| Mat3 SO3::ln |
( |
double * |
o = nullptr | ) |
const |
Logarithmic mapping from SO3 to a skew-symetric matrix in so3 o = |acos(0.5*(tr(R)-1))| w^ = o / (2sin(o))*(R-R^T)
Special cases for 0 and +-pi
◆ ln_vee()
| Mat31 SO3::ln_vee |
( |
| ) |
const |
Logarithm of R and then the vee operator to get the coordinates w of the Lie Algebra
◆ mul()
| SO3 SO3::mul |
( |
const SO3 & |
rhs | ) |
const |
◆ operator*()
| SO3 SO3::operator* |
( |
const SO3 & |
rhs | ) |
const |
This method allows you to Multiply SO3 expressions
◆ operator=()
| SO3 & SO3::operator= |
( |
const SO3 & |
rhs | ) |
|
This method allows you to assign Eigen expressions to SO3
◆ R()
R method returns the matrix 3x3 of the SO3 rotation
◆ ref2R()
ref to R method returns the reference to modify R
◆ toString()
| std::string SO3::toString |
( |
| ) |
const |
Generates string representation of the SO3 object.
- Returns
- std::string object to print
◆ update_lhs()
| void SO3::update_lhs |
( |
const Mat31 & |
dw | ) |
|
This is our default way to update transformations Updates the current transformation with the incremental dw so3 R'=exp(dw^)*R
◆ update_rhs()
| void SO3::update_rhs |
( |
const Mat31 & |
dw | ) |
|
Updates the current transformation with the incremental dw so3 R'=R*exp(dw^)
The documentation for this class was generated from the following files:
- src/geometry/mrob/SO3.hpp
- src/geometry/SO3.cpp