Template Struct SE_2_3

Inheritance Relationships

Base Type

Struct Documentation

template<typename _Scalar>
struct SE_2_3 : public manif::SE_2_3Base<SE_2_3<_Scalar>>

Represent an element of SE_2_3.

Public Types

using Translation = typename Base::Translation
using Quaternion = Eigen::Quaternion<Scalar>
using LinearVelocity = typename Base::LinearVelocity

Public Functions

SE_2_3() = default
~SE_2_3() = default
MANIF_COPY_CONSTRUCTOR (SE_2_3) MANIF_MOVE_CONSTRUCTOR(SE_2_3) template< typename _DerivedOther > SE_2_3(const LieGroupBase< _DerivedOther > &o)
MANIF_GROUP_ASSIGN_OP (SE_2_3) SE_2_3(const Translation &t

Constructor given a translation, a unit quaternion and a linear velocity.

Parameters:
  • t[in] A translation vector.

  • q[in] A unit quaternion.

  • v[in] A linear velocity vector.

Throws:

manif::invalid_argument – on un-normalized complex number.

SE_2_3(const Translation &t, const Eigen::AngleAxis<Scalar> &angle_axis, const LinearVelocity &v)

Constructor given a translation, an angle axis and a linear velocity.

Parameters:
  • t[in] A translation vector.

  • angle_axis[in] An angle-axis.

  • v[in] A linear velocity vector.

SE_2_3(const Translation &t, const SO3<Scalar> &SO3, const LinearVelocity &v)

Constructor given a translation, SO3 element and a linear velocity.

Parameters:
  • t[in] A translation vector.

  • SO3 – An element of SO3.

  • v[in] A linear velocity vector.

SE_2_3(const Scalar x, const Scalar y, const Scalar z, const Scalar roll, const Scalar pitch, const Scalar yaw, const Scalar vx, const Scalar vy, const Scalar vz)

Constructor given translation components, roll-pitch-yaw angles and linear velocity components.

Parameters:
  • x[in] The x component of the translation.

  • y[in] The y component of the translation.

  • z[in] The z component of the translation.

  • roll[in] The roll angle.

  • pitch[in] The pitch angle.

  • yaw[in] The yaw angle.

  • vx[in] The x component of the linear velocity.

  • vy[in] The y component of the linear velocity.

  • vz[in] The z component of the linear velocity.

SE_2_3(const Eigen::Transform<_Scalar, 3, Eigen::Isometry> &h, const LinearVelocity &v)

Constructor from a 3D Eigen::Isometry<Scalar> relevant to SE(3) and a linear velocity.

Note

overall, this should be a double direct spatial isometry,

Parameters:
  • h[in] a isometry object from Eigen defined for SE(3)

  • v[in] a linear velocity vector.

DataType &coeffs()
const DataType &coeffs() const

Public Members

const Eigen::Quaternion<Scalar> &q
const Eigen::Quaternion< Scalar > const LinearVelocity & v

Protected Attributes

DataType data_