29 #include "mrob/matrix_base.hpp" 56 SO3(
const Mat3 &
R = Mat3::Identity());
72 template<
typename OtherDerived>
73 SO3(
const Eigen::MatrixBase<OtherDerived>& rhs);
105 void exp(
const Mat3 &w_hat);
113 Mat3
ln(
double *o =
nullptr)
const;
135 double distance(
const SO3 &rhs)
const;
137 void print(
void)
const;
138 void print_lie(
void)
const;
153 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
164 Mat3
hat3(
const Mat31 &w);
170 Mat31
vee3(
const Mat3 &w_hat);
172 bool isSO3(
const Mat3 &
R);
193 Mat3
rpy_to_so3(
const Eigen::Ref<const Mat31> v);
Mat3 quat_to_so3(const Eigen::Ref< const Mat41 > v)
Definition: SO3.cpp:299
void update_lhs(const Mat31 &dw)
Definition: SO3.cpp:78
Mat41 so3_to_quat(const Eigen::Ref< const Mat3 > R)
Definition: SO3.cpp:308
void update_rhs(const Mat31 &dw)
Definition: SO3.cpp:84
SO3(const Mat3 &R=Mat3::Identity())
Definition: SO3.cpp:34
SO3 inv(void) const
Definition: SO3.cpp:249
Mat3 rpy_to_so3(const Eigen::Ref< const Mat31 > v)
Definition: SO3.cpp:316
Mat3 R() const
Definition: SO3.cpp:259
std::string toString() const
Generates string representation of the SO3 object.
Definition: SO3.cpp:90
SO3 operator*(const SO3 &rhs) const
Definition: SO3.cpp:67
Mat3 adj() const
Definition: SO3.cpp:254
SO3 mul(const SO3 &rhs) const
Definition: SO3.cpp:73
SO3 & operator=(const SO3 &rhs)
Definition: SO3.cpp:57
Mat3 ln(double *o=nullptr) const
Definition: SO3.cpp:136
Mat31 ln_vee() const
Definition: SO3.cpp:243
Mat31 vee3(const Mat3 &w_hat)
Definition: SO3.cpp:97
Special Euclidean (group) in 3d Is the group representing rotations and translations, that is, rigid body transformations. SE3 = {T = [R t] | R SO3 , t Re^3 } [0 1] Associated to the groups of RBT, there is the Lie algebra se3 representing the same transformation in the tangent space around the identity. Particularly, xi =[w , v] Re^6, where w Re^3 represents the rotation and v the translation. We will preserve this order in this class.
Definition: matrix_base.hpp:36
void exp(const Mat3 &w_hat)
Definition: SO3.cpp:114
Mat3 & ref2R()
Definition: SO3.cpp:264
Mat3 hat3(const Mat31 &w)
Definition: SO3.cpp:104