8#ifndef RBDL_EIGENMATH_H
9#define RBDL_EIGENMATH_H
15#define RBDL_TEMPLATE_DLLAPI
21EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::MatrixXd)
28 template<
typename OtherDerived>
29 Vector2_t(
const Eigen::MatrixBase<OtherDerived>& other)
33 template<
typename OtherDerived>
34 Vector2_t& operator=(
const Eigen::MatrixBase<OtherDerived>& other)
36 this->Base::operator=(other);
44 const double& v0,
const double& v1
47 Base::_check_template_params();
52 void set(
const double& v0,
const double& v1)
54 Base::_check_template_params();
65 template<
typename OtherDerived>
66 Vector3_t(
const Eigen::MatrixBase<OtherDerived>& other)
70 template<
typename OtherDerived>
73 this->Base::operator=(other);
81 const double& v0,
const double& v1,
const double& v2
84 Base::_check_template_params();
86 (*this) << v0, v1, v2;
89 void set(
const double& v0,
const double& v1,
const double& v2)
91 Base::_check_template_params();
93 (*this) << v0, v1, v2;
102 template<
typename OtherDerived>
107 template<
typename OtherDerived>
110 this->Base::operator=(other);
118 const double& m00,
const double& m01,
const double& m02,
119 const double& m10,
const double& m11,
const double& m12,
120 const double& m20,
const double& m21,
const double& m22
123 Base::_check_template_params();
138 template<
typename OtherDerived>
143 template<
typename OtherDerived>
146 this->Base::operator=(other);
154 const double& v0,
const double& v1,
const double& v2,
const double& v3
157 Base::_check_template_params();
159 (*this) << v0, v1, v2, v3;
162 void set(
const double& v0,
const double& v1,
const double& v2,
const double& v3)
164 Base::_check_template_params();
166 (*this) << v0, v1, v2, v3;
173 typedef Eigen::Matrix<double, 6, 1>
Base;
175 template<
typename OtherDerived>
177 : Eigen::Matrix<double, 6, 1>(other)
180 template<
typename OtherDerived>
183 this->Base::operator=(other);
191 const double& v0,
const double& v1,
const double& v2,
192 const double& v3,
const double& v4,
const double& v5
195 Base::_check_template_params();
197 (*this) << v0, v1, v2, v3, v4, v5;
201 const double& v0,
const double& v1,
const double& v2,
202 const double& v3,
const double& v4,
const double& v5
205 Base::_check_template_params();
207 (*this) << v0, v1, v2, v3, v4, v5;
211class RBDL_TEMPLATE_DLLAPI
Matrix4_t :
public Eigen::Matrix<double, 4, 4>
214 typedef Eigen::Matrix<double, 4, 4>
Base;
216 template<
typename OtherDerived>
218 : Eigen::Matrix<double, 4, 4>(other)
221 template<
typename OtherDerived>
224 this->Base::operator=(other);
238 Base::_check_template_params();
241 << m00, m01, m02, m03
255 Base::_check_template_params();
258 << m00, m01, m02, m03
269 typedef Eigen::Matrix<double, 6, 6>
Base;
271 template<
typename OtherDerived>
273 : Eigen::Matrix<double, 6, 6>(other)
276 template<
typename OtherDerived>
279 this->Base::operator=(other);
295 Base::_check_template_params();
298 << m00, m01, m02, m03, m04, m05
299 , m10, m11, m12, m13, m14, m15
300 , m20, m21, m22, m23, m24, m25
301 , m30, m31, m32, m33, m34, m35
302 , m40, m41, m42, m43, m44, m45
303 , m50, m51, m52, m53, m54, m55
316 Base::_check_template_params();
319 << m00, m01, m02, m03, m04, m05
320 , m10, m11, m12, m13, m14, m15
321 , m20, m21, m22, m23, m24, m25
322 , m30, m31, m32, m33, m34, m35
323 , m40, m41, m42, m43, m44, m45
324 , m50, m51, m52, m53, m54, m55
Matrix3_t(const Eigen::MatrixBase< OtherDerived > &other)
EIGEN_STRONG_INLINE Matrix3_t(const double &m00, const double &m01, const double &m02, const double &m10, const double &m11, const double &m12, const double &m20, const double &m21, const double &m22)
Matrix3_t & operator=(const Eigen::MatrixBase< OtherDerived > &other)
EIGEN_STRONG_INLINE Matrix3_t()
void set(const Scalar &m00, const Scalar &m01, const Scalar &m02, const Scalar &m03, const Scalar &m10, const Scalar &m11, const Scalar &m12, const Scalar &m13, const Scalar &m20, const Scalar &m21, const Scalar &m22, const Scalar &m23, const Scalar &m30, const Scalar &m31, const Scalar &m32, const Scalar &m33)
Eigen::Matrix< double, 4, 4 > Base
EIGEN_STRONG_INLINE Matrix4_t()
Matrix4_t & operator=(const Eigen::MatrixBase< OtherDerived > &other)
Matrix4_t(const Eigen::MatrixBase< OtherDerived > &other)
EIGEN_STRONG_INLINE Matrix4_t(const Scalar &m00, const Scalar &m01, const Scalar &m02, const Scalar &m03, const Scalar &m10, const Scalar &m11, const Scalar &m12, const Scalar &m13, const Scalar &m20, const Scalar &m21, const Scalar &m22, const Scalar &m23, const Scalar &m30, const Scalar &m31, const Scalar &m32, const Scalar &m33)
void set(const Scalar &m00, const Scalar &m01, const Scalar &m02, const Scalar &m03, const Scalar &m04, const Scalar &m05, const Scalar &m10, const Scalar &m11, const Scalar &m12, const Scalar &m13, const Scalar &m14, const Scalar &m15, const Scalar &m20, const Scalar &m21, const Scalar &m22, const Scalar &m23, const Scalar &m24, const Scalar &m25, const Scalar &m30, const Scalar &m31, const Scalar &m32, const Scalar &m33, const Scalar &m34, const Scalar &m35, const Scalar &m40, const Scalar &m41, const Scalar &m42, const Scalar &m43, const Scalar &m44, const Scalar &m45, const Scalar &m50, const Scalar &m51, const Scalar &m52, const Scalar &m53, const Scalar &m54, const Scalar &m55)
EIGEN_STRONG_INLINE SpatialMatrix_t(const Scalar &m00, const Scalar &m01, const Scalar &m02, const Scalar &m03, const Scalar &m04, const Scalar &m05, const Scalar &m10, const Scalar &m11, const Scalar &m12, const Scalar &m13, const Scalar &m14, const Scalar &m15, const Scalar &m20, const Scalar &m21, const Scalar &m22, const Scalar &m23, const Scalar &m24, const Scalar &m25, const Scalar &m30, const Scalar &m31, const Scalar &m32, const Scalar &m33, const Scalar &m34, const Scalar &m35, const Scalar &m40, const Scalar &m41, const Scalar &m42, const Scalar &m43, const Scalar &m44, const Scalar &m45, const Scalar &m50, const Scalar &m51, const Scalar &m52, const Scalar &m53, const Scalar &m54, const Scalar &m55)
SpatialMatrix_t & operator=(const Eigen::MatrixBase< OtherDerived > &other)
EIGEN_STRONG_INLINE SpatialMatrix_t()
SpatialMatrix_t(const Eigen::MatrixBase< OtherDerived > &other)
Eigen::Matrix< double, 6, 6 > Base
SpatialVector_t(const Eigen::MatrixBase< OtherDerived > &other)
Eigen::Matrix< double, 6, 1 > Base
EIGEN_STRONG_INLINE SpatialVector_t(const double &v0, const double &v1, const double &v2, const double &v3, const double &v4, const double &v5)
SpatialVector_t & operator=(const Eigen::MatrixBase< OtherDerived > &other)
void set(const double &v0, const double &v1, const double &v2, const double &v3, const double &v4, const double &v5)
EIGEN_STRONG_INLINE SpatialVector_t()
EIGEN_STRONG_INLINE Vector3_t()
Vector3_t(const Eigen::MatrixBase< OtherDerived > &other)
EIGEN_STRONG_INLINE Vector3_t(const double &v0, const double &v1, const double &v2)
Vector3_t & operator=(const Eigen::MatrixBase< OtherDerived > &other)
void set(const double &v0, const double &v1, const double &v2)
EIGEN_STRONG_INLINE Vector4_t(const double &v0, const double &v1, const double &v2, const double &v3)
void set(const double &v0, const double &v1, const double &v2, const double &v3)
EIGEN_STRONG_INLINE Vector4_t()
Vector4_t(const Eigen::MatrixBase< OtherDerived > &other)
Vector4_t & operator=(const Eigen::MatrixBase< OtherDerived > &other)
RBDLCasadiMath::MX_Xd_static< 2, 1 > Vector2_t