pinocchio  2.7.0
A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives
SE3Tpl< _Scalar, _Options > Struct Template Reference

Public Types

typedef SE3Base< SE3Tpl< _Scalar, _Options > > Base
 
typedef traits< SE3Tpl >::Matrix3 Matrix3
 
typedef traits< SE3Tpl >::Matrix4 Matrix4
 
typedef traits< SE3Tpl >::Matrix6 Matrix6
 
typedef Eigen::Quaternion< Scalar, Options > Quaternion
 
typedef traits< SE3Tpl >::Vector3 Vector3
 
typedef traits< SE3Tpl >::Vector4 Vector4
 

Public Member Functions

template<typename Matrix3Like , typename Vector3Like >
 SE3Tpl (const Eigen::MatrixBase< Matrix3Like > &R, const Eigen::MatrixBase< Vector3Like > &trans)
 
template<typename Matrix4Like >
 SE3Tpl (const Eigen::MatrixBase< Matrix4Like > &m)
 
template<typename QuaternionLike , typename Vector3Like >
 SE3Tpl (const Eigen::QuaternionBase< QuaternionLike > &quat, const Eigen::MatrixBase< Vector3Like > &trans)
 
template<int O2>
 SE3Tpl (const SE3Tpl< Scalar, O2 > &clone)
 
 SE3Tpl (int)
 
template<int O2>
SE3Tpl __mult__ (const SE3Tpl< Scalar, O2 > &m2) const
 
template<typename D >
SE3GroupAction< D >::ReturnType act_impl (const D &d) const
 — GROUP ACTIONS ON M6, F6 and I6 — More...
 
template<int O2>
SE3Tpl act_impl (const SE3Tpl< Scalar, O2 > &m2) const
 
Vector3 act_impl (const Vector3 &p) const
 
template<typename D >
SE3GroupAction< D >::ReturnType actInv_impl (const D &d) const
 by = aXb.actInv(ay)
 
template<int O2>
SE3Tpl actInv_impl (const SE3Tpl< Scalar, O2 > &m2) const
 
Vector3 actInv_impl (const Vector3 &p) const
 
template<typename MapDerived >
Vector3 actInvOnEigenObject (const Eigen::MapBase< MapDerived > &p) const
 
template<typename EigenDerived >
EigenDerived::PlainObject actInvOnEigenObject (const Eigen::MatrixBase< EigenDerived > &p) const
 
template<typename MapDerived >
Vector3 actOnEigenObject (const Eigen::MapBase< MapDerived > &p) const
 
template<typename EigenDerived >
EigenDerived::PlainObject actOnEigenObject (const Eigen::MatrixBase< EigenDerived > &p) const
 
template<typename NewScalar >
SE3Tpl< NewScalar, Options > cast () const
 
void disp_impl (std::ostream &os) const
 
template<typename OtherScalar >
SE3Tpl< Scalar, Options > Interpolate (const SE3Tpl &A, const SE3Tpl &B, const OtherScalar &alpha)
 
SE3Tpl inverse () const
 aXb = bXa.inverse()
 
template<int O2>
bool isApprox_impl (const SE3Tpl< Scalar, O2 > &m2, const Scalar &prec=Eigen::NumTraits< Scalar >::dummy_precision()) const
 
template<int O2>
bool isEqual (const SE3Tpl< Scalar, O2 > &m2) const
 
bool isIdentity (const Scalar &prec=Eigen::NumTraits< Scalar >::dummy_precision()) const
 
bool isNormalized (const Scalar &prec=Eigen::NumTraits< Scalar >::dummy_precision()) const
 
void normalize ()
 
PlainType normalized () const
 
template<int O2>
SE3Tploperator= (const SE3Tpl< Scalar, O2 > &other)
 
 PINOCCHIO_SE3_TYPEDEF_TPL (SE3Tpl)
 
AngularRef rotation ()
 
ConstAngularRef rotation () const
 
void rotation (const AngularType &R)
 
AngularRef rotation_impl ()
 
ConstAngularRef rotation_impl () const
 
void rotation_impl (const AngularType &R)
 
SE3TplsetIdentity ()
 
SE3TplsetRandom ()
 
ActionMatrixType toActionMatrix_impl () const
 Vb.toVector() = bXa.toMatrix() * Va.toVector()
 
ActionMatrixType toActionMatrixInverse_impl () const
 
ActionMatrixType toDualActionMatrix_impl () const
 
HomogeneousMatrixType toHomogeneousMatrix_impl () const
 
LinearRef translation ()
 
ConstLinearRef translation () const
 
void translation (const LinearType &t)
 
LinearRef translation_impl ()
 
ConstLinearRef translation_impl () const
 
void translation_impl (const LinearType &p)
 

Static Public Member Functions

static SE3Tpl Identity ()
 
template<typename OtherScalar >
static SE3Tpl Interpolate (const SE3Tpl &A, const SE3Tpl &B, const OtherScalar &alpha)
 Linear interpolation on the SE3 manifold. More...
 
static SE3Tpl Random ()
 

Protected Attributes

AngularType rot
 
LinearType trans
 

Detailed Description

template<typename _Scalar, int _Options>
struct pinocchio::SE3Tpl< _Scalar, _Options >

Definition at line 38 of file fwd.hpp.

Member Function Documentation

◆ act_impl()

SE3GroupAction<D>::ReturnType act_impl ( const D &  d) const
inline

— GROUP ACTIONS ON M6, F6 and I6 —

ay = aXb.act(by)

Definition at line 210 of file se3-tpl.hpp.

◆ cast()

SE3Tpl<NewScalar,Options> cast ( ) const
inline
Returns
An expression of *this with the Scalar type casted to NewScalar.

Definition at line 288 of file se3-tpl.hpp.

◆ Interpolate()

static SE3Tpl Interpolate ( const SE3Tpl< _Scalar, _Options > &  A,
const SE3Tpl< _Scalar, _Options > &  B,
const OtherScalar &  alpha 
)
static

Linear interpolation on the SE3 manifold.

Parameters
[in]AInitial transformation.
[in]BTarget transformation.
[in]alphaInterpolation factor in [0 ... 1].
Returns
An interpolated transformation between A and B.
Note
This is similar to the SLERP operation which acts initially for rotation but applied here to rigid transformation.

The documentation for this struct was generated from the following files: