RML  1.0
Robotics Mathematical Library
Loading...
Searching...
No Matches
RotMatrix.h
Go to the documentation of this file.
1
8#ifndef INCLUDE_ROTMATRIX_H_
9#define INCLUDE_ROTMATRIX_H_
10
11#include "Types.h"
12
13namespace Eigen {
14
26class RotationMatrix : public Eigen::Matrix<double,3,3> {
27public:
28
30 RotationMatrix(Eigen::Quaterniond q);
31
32 // This constructor allows you to construct RotMatrix from Eigen expressions
33 template <typename OtherDerived>
34 RotationMatrix(const Eigen::MatrixBase<OtherDerived>& other)
35 : Eigen::Matrix<double,3,3>(other)
36 {
37 }
38 // This method allows you to assign Eigen expressions to RotMatrix
39 template <typename OtherDerived>
40 RotationMatrix& operator=(const Eigen::MatrixBase<OtherDerived>& other)
41 {
42 this->Eigen::Matrix<double,3,3>::operator=(other);
43 return *this;
44 }
45
47
49
50 Eigen::Quaterniond ToQuaternion() const;
51
52 //Computes the integral of a rotation matrix (Out = e^[wdt^] * Rin )
53 RotationMatrix StrapDown(const Vector3d& w, double dt) const;
54};
55}
56
57#endif /* INCLUDE_ROTMATRIX_H_ */
This class extends the Eigen::Matrix3d.
Definition RotMatrix.h:26
Eigen::Quaterniond ToQuaternion() const
RotationMatrix(Eigen::Quaterniond q)
RotationMatrix StrapDown(const Vector3d &w, double dt) const
RotationMatrix & operator=(const Eigen::MatrixBase< OtherDerived > &other)
Definition RotMatrix.h:40
rml::EulerRPY ToEulerRPY() const
RotationMatrix(const Eigen::MatrixBase< OtherDerived > &other)
Definition RotMatrix.h:34
Eigen::Matrix6d CartesianRotationMatrix() const
Euler RPY angle representation.
Definition EulerRPY.h:25
This namespace is used to extend the Eigen Dense library functionalities.
Definition RotMatrix.h:13
Eigen::Matrix< double, 6, 6 > Matrix6d
Definition Types.h:36