Template Struct SE2¶
Defined in File SE2.h
Inheritance Relationships¶
Base Type¶
public manif::SE2Base< SE2< _Scalar > >
(Template Struct SE2Base)
Struct Documentation¶
-
template<typename _Scalar>
struct SE2 : public manif::SE2Base<SE2<_Scalar>>¶ Represents an element of SE2.
Public Types
-
using Translation = typename Base::Translation¶
Public Functions
-
SE2() = default¶
-
~SE2() = default¶
- MANIF_COPY_CONSTRUCTOR (SE2) MANIF_MOVE_CONSTRUCTOR(SE2) template< typename _DerivedOther > SE2(const LieGroupBase< _DerivedOther > &o)
- MANIF_GROUP_ASSIGN_OP (SE2) SE2(const Translation &t
Constructor given a translation and a unit complex number.
- Parameters:
t – [in] A translation vector.
c – [in] A complex number.
- Throws:
manif::invalid_argument – on un-normalized complex number.
-
SE2(const Scalar x, const Scalar y, const Scalar theta)¶
Constructor given the x and y components of the translational part and an angle.
- Parameters:
x – [in] The x-components of the translational part.
y – [in] The y-components of the translational part.
c – [in] An angle.
-
SE2(const Scalar x, const Scalar y, const Scalar real, const Scalar imag)¶
Constructor given the x and y components of the translational part and the real and imaginary part of a unit complex number.
- Parameters:
x – [in] The x-components of the translational part.
y – [in] The y-components of the translational part.
real – [in] The real of a unitary complex number.
imag – [in] The imaginary of a unitary complex number.
- Throws:
manif::invalid_argument – on un-normalized complex number.
-
SE2(const Scalar x, const Scalar y, const std::complex<Scalar> &c)¶
Constructor given the x and y components of the translational part and the real and imaginary part of a unit complex number.
- Parameters:
x – [in] The x-components of the translational part.
y – [in] The y-components of the translational part.
c – [in] The unitary complex number.
- Throws:
manif::invalid_argument – on un-normalized complex number.
-
SE2(const Eigen::Transform<_Scalar, 2, Eigen::Isometry> &h)¶
Constructor from a 2D Eigen::Isometry<Scalar>
Isometry is a typedef from Eigen::Transform, in which the linear part is assumed a rotation matrix. This is used to speed up certain methods of Transform, especially inverse().
- Parameters:
h – [in] an isometry object from Eigen
-
DataType &coeffs()¶
Access the underlying data.
- Parameters:
a – [out] reference to the underlying Eigen vector
-
const DataType &coeffs() const¶
Access the underlying data.
- Parameters:
a – [out] const reference to the underlying Eigen vector
Public Members
-
const std::complex<Scalar> &c¶
Protected Attributes
-
DataType data_¶
Underlying data (Eigen) vector.
-
using Translation = typename Base::Translation¶