Template Struct SO3

Inheritance Relationships

Base Type

Struct Documentation

template<typename _Scalar>
struct SO3 : public manif::SO3Base<SO3<_Scalar>>

Represents an element of SO3.

Public Functions

SO3() = default
~SO3() = default
MANIF_COPY_CONSTRUCTOR (SO3) MANIF_MOVE_CONSTRUCTOR(SO3) template< typename _DerivedOther > SO3(const LieGroupBase< _DerivedOther > &o)
MANIF_GROUP_ASSIGN_OP (SO3) SO3(const QuaternionDataType &q)

Constructor given a unit quaternion.

Parameters:

q[in] A unit quaternion.

Throws:

manif::invalid_argument – on un-normalized quaternion.

SO3(const Scalar x, const Scalar y, const Scalar z, const Scalar w)

Constructor given the quaternion’s coefficients.

Parameters:
  • x[in] The x-components of a unit quaternion.

  • y[in] The x-components of a unit quaternion.

  • z[in] The x-components of a unit quaternion.

  • w[in] The x-components of a unit quaternion.

Throws:

manif::invalid_argument – on un-normalized quaternion.

SO3(const Eigen::AngleAxis<Scalar> &angle_axis)

Constructor given an angle axis.

SO3(const Scalar roll, const Scalar pitch, const Scalar yaw)

Constructor given Euler angles.

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

Protected Attributes

DataType data_