5#include <pinocchio/spatial/se3-tpl.hpp>
10template <
typename Scalar>
14 using SE3 = pin::SE3Tpl<Scalar>;
25 VectorXs
operator()(
const ConstVectorRef &x)
const override {
27 SE3 M(q, x.template head<3>());
29 return M.actOnEigenObject(
point_);
33 assert(Jout.rows() == 3 && Jout.cols() == 6);
36 Jout.template leftCols<3>() = q.matrix();
37 Jout.template rightCols<3>().noalias() = -q.matrix() * skew_point_;
40 Eigen::Ref<const Matrix33s>
skew_point()
const {
return skew_point_; }
49#ifdef PROXSUITE_NLP_ENABLE_TEMPLATE_INSTANTIATION
Base definitions for function classes.
#define PROXSUITE_NLP_DYNAMIC_TYPEDEFS(Scalar)
Twice-differentiable function, with method Jacobian and vector-hessian product evaluation.
Wrap a Pinocchio Lie group into a ManifoldAbstractTpl object.