Template Struct SE3Tpl

Inheritance Relationships

Base Type

Struct Documentation

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

Public Types

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

Public Functions

EIGEN_MAKE_ALIGNED_OPERATOR_NEW PINOCCHIO_SE3_TYPEDEF_TPL(SE3Tpl)
inline SE3Tpl()
template<typename QuaternionLike, typename Vector3Like>
inline SE3Tpl(const Eigen::QuaternionBase<QuaternionLike> &quat, const Eigen::MatrixBase<Vector3Like> &trans)
template<typename Matrix3Like, typename Vector3Like>
inline SE3Tpl(const Eigen::MatrixBase<Matrix3Like> &R, const Eigen::MatrixBase<Vector3Like> &trans)
template<typename Matrix4Like>
inline explicit SE3Tpl(const Eigen::MatrixBase<Matrix4Like> &m)
inline SE3Tpl(int)
template<int O2>
inline SE3Tpl(const SE3Tpl<Scalar, O2> &clone)
template<int O2>
inline SE3Tpl &operator=(const SE3Tpl<Scalar, O2> &other)
inline SE3Tpl &setIdentity()
inline SE3Tpl inverse() const

aXb = bXa.inverse()

inline SE3Tpl &setRandom()
inline HomogeneousMatrixType toHomogeneousMatrix_impl() const
inline ActionMatrixType toActionMatrix_impl() const

Vb.toVector() = bXa.toMatrix() * Va.toVector()

inline ActionMatrixType toActionMatrixInverse_impl() const
inline ActionMatrixType toDualActionMatrix_impl() const
inline void disp_impl(std::ostream &os) const
template<typename D>
inline SE3GroupAction<D>::ReturnType act_impl(const D &d) const

&#8212; GROUP ACTIONS ON M6, F6 and I6 &#8212;

ay = aXb.act(by)

template<typename D>
inline SE3GroupAction<D>::ReturnType actInv_impl(const D &d) const

by = aXb.actInv(ay)

template<typename EigenDerived>
inline EigenDerived::PlainObject actOnEigenObject(const Eigen::MatrixBase<EigenDerived> &p) const
template<typename MapDerived>
inline Vector3 actOnEigenObject(const Eigen::MapBase<MapDerived> &p) const
template<typename EigenDerived>
inline EigenDerived::PlainObject actInvOnEigenObject(const Eigen::MatrixBase<EigenDerived> &p) const
template<typename MapDerived>
inline Vector3 actInvOnEigenObject(const Eigen::MapBase<MapDerived> &p) const
inline Vector3 act_impl(const Vector3 &p) const
inline Vector3 actInv_impl(const Vector3 &p) const
template<int O2>
inline SE3Tpl act_impl(const SE3Tpl<Scalar, O2> &m2) const
template<int O2>
inline SE3Tpl actInv_impl(const SE3Tpl<Scalar, O2> &m2) const
template<int O2>
inline SE3Tpl __mult__(const SE3Tpl<Scalar, O2> &m2) const
template<int O2>
inline bool isEqual(const SE3Tpl<Scalar, O2> &m2) const
template<int O2>
inline bool isApprox_impl(const SE3Tpl<Scalar, O2> &m2, const Scalar &prec = Eigen::NumTraits<Scalar>::dummy_precision()) const
inline bool isIdentity(const Scalar &prec = Eigen::NumTraits<Scalar>::dummy_precision()) const
inline ConstAngularRef rotation_impl() const
inline AngularRef rotation_impl()
inline void rotation_impl(const AngularType &R)
inline ConstLinearRef translation_impl() const
inline LinearRef translation_impl()
inline void translation_impl(const LinearType &p)
template<typename NewScalar>
inline SE3Tpl<NewScalar, Options> cast() const
Returns:

An expression of *this with the Scalar type casted to NewScalar.

inline bool isNormalized(const Scalar &prec = Eigen::NumTraits<Scalar>::dummy_precision()) const
inline void normalize()
inline PlainType normalized() const
template<typename OtherScalar>
SE3Tpl<Scalar, Options> Interpolate(const SE3Tpl &A, const SE3Tpl &B, const OtherScalar &alpha)

Public Static Functions

static inline SE3Tpl Identity()
static inline SE3Tpl Random()
template<typename OtherScalar>
static SE3Tpl Interpolate(const SE3Tpl &A, const SE3Tpl &B, const OtherScalar &alpha)

Linear interpolation on the SE3 manifold.

Note

This is similar to the SLERP operation which acts initially for rotation but applied here to rigid transformation.

Parameters:
  • A[in] Initial transformation.

  • B[in] Target transformation.

  • alpha[in] Interpolation factor in [0 … 1].

Returns:

An interpolated transformation between A and B.

Protected Attributes

AngularType rot
LinearType trans