Go to the documentation of this file.
5 #ifndef __pinocchio_force_set_hpp__
6 #define __pinocchio_force_set_hpp__
9 #include <Eigen/Geometry>
13 template<
typename _Scalar,
int _Options>
19 typedef Eigen::Matrix<Scalar,3,1,Options>
Vector3;
20 typedef Eigen::Matrix<Scalar,3,3,Options>
Matrix3;
21 typedef Eigen::Matrix<Scalar,6,1,Options>
Vector6;
22 typedef Eigen::Matrix<Scalar,6,6,Options>
Matrix6;
25 typedef Eigen::Matrix<Scalar,3,Eigen::Dynamic,Options>
Matrix3x;
26 typedef Eigen::Matrix<Scalar,6,Eigen::Dynamic,Options>
Matrix6x;
31 {
m_f.fill(NAN);
m_n.fill(NAN); }
67 <<
"F =\n" << phi.
linear() << std::endl
68 <<
"Tau =\n" << phi.
angular() << std::endl;
82 Eigen::Block<const ForceSetTpl::Matrix3x>
linear()
const
84 Eigen::Block<const ForceSetTpl::Matrix3x>
angular()
const
109 template <
typename D>
112 eigen_assert(D::RowsAtCompileTime == 6);
113 assert(
m.cols() ==
len);
114 linear() =
m.template topRows<3>();
115 angular() =
m.template bottomRows<3>();
164 #endif // ifndef __pinocchio_force_set_hpp__
Eigen::Matrix< Scalar, 6, 1, Options > Vector6
ForceSetTpl< double, 0 > ForceSet
const Matrix3x & angular() const
const Matrix3x & linear() const
ForceSetTpl(const int &ncols)
Block(ForceSetTpl &ref, const int &idx, const int &len)
ForceSetTpl se3ActionInverse(const SE3 &m) const
bf = aXb.actInv(af)
Eigen::Block< const ForceSetTpl::Matrix3x > angular() const
ForceSetTpl se3Action(const SE3 &m) const
af = aXb.act(bf)
Eigen::Block< const ForceSetTpl::Matrix3x > linear() const
ForceSetTpl(const Matrix3x &linear, const Matrix3x &angular)
Eigen::Matrix< Scalar, 3, 3, Options > Matrix3
void skew(const Eigen::MatrixBase< Vector3 > &v, const Eigen::MatrixBase< Matrix3 > &M)
Computes the skew representation of a given 3d vector, i.e. the antisymmetric matrix representation o...
Block & operator=(const ForceSetTpl ©)
Eigen::Matrix< Scalar, 3, 1, Options > Vector3
Eigen::Block< ForceSetTpl::Matrix3x > linear()
ForceSetTpl se3ActionInverse(const SE3 &m) const
bf = aXb.actInv(af)
Eigen::Matrix< Scalar, 3, Eigen::Dynamic, Options > Matrix3x
Eigen::Matrix< Scalar, 6, Eigen::Dynamic, Options > Matrix6x
SE3Tpl< Scalar, Options > SE3
ForceSetTpl::Matrix6x matrix() const
void copy(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &origin, DataTpl< Scalar, Options, JointCollectionTpl > &dest, KinematicLevel kinematic_level)
Copy part of the data from origin to dest. Template parameter can be used to select at which differen...
friend std::ostream & operator<<(std::ostream &os, const ForceSetTpl &phi)
Eigen::Matrix< Scalar, 6, 6, Options > Matrix6
Block block(const int &idx, const int &len)
ForceSetTpl se3Action(const SE3 &m) const
af = aXb.act(bf)
Eigen::Block< ForceSetTpl::Matrix3x > angular()
Main pinocchio namespace.
pinocchio
Author(s):
autogenerated on Tue Feb 13 2024 03:43:58