smooth
A C++ library for Lie theory
Loading...
Searching...
No Matches
List of all members
Map< SE2< _Scalar > > Class Template Reference

Memory mapping of SE2 Lie group. More...

#include <se2.hpp>

Inheritance diagram for Map< SE2< _Scalar > >:
Inheritance graph
[legend]

Additional Inherited Members

- Public Types inherited from LieGroupBase< Derived >
using Scalar = typename traits::Scalar
 Scalar type.
 
using Matrix = Eigen::Matrix< Scalar, Dim, Dim >
 Lie group matrix type.
 
using Tangent = Eigen::Matrix< Scalar, Dof, 1 >
 Lie group parameterized tangent type.
 
using TangentMap = Eigen::Matrix< Scalar, Dof, Dof >
 Matrix representing map between tangent elements.
 
using Hessian = Eigen::Matrix< Scalar, Dof, Dof *Dof >
 Plain return type with different scalar.
 
template<typename NewScalar >
using CastT = typename traits::template PlainObject< NewScalar >
 Plain return type with different scalar.
 
using PlainObject = CastT< Scalar >
 Plain return type.
 
- Public Member Functions inherited from SE2Base< Map< SE2< _Scalar > > >
Map< SO2< Scalar > > so2 ()
 Access SO(2) part.
 
Map< const SO2< Scalar > > so2 () const
 Const access SO(2) part.
 
Eigen::Map< Eigen::Vector2< Scalar > > r2 ()
 Access R2 part.
 
Eigen::Map< const Eigen::Vector2< Scalar > > r2 () const
 Const access R2 part.
 
Eigen::Transform< Scalar, 2, Eigen::Isometry > isometry () const
 Return as 2D Eigen transform.
 
Eigen::Vector2< Scalaroperator* (const Eigen::MatrixBase< EigenDerived > &v) const
 Tranformation action on 2D vector.
 
Eigen::Matrix< Scalar, 2, 3 > dr_action (const Eigen::MatrixBase< EigenDerived > &v) const
 Jacobian of rotation action w.r.t. group.
 
SE3< Scalarlift_se3 () const
 Lift to SE3.
 
- Public Member Functions inherited from LieGroupBase< Derived >
template<bool = true>
requires (is_mutable)
autocoeffs () const
 Access underlying storages.
 
const autocoeffs () const
 Const access underlying storages.
 
template<bool = true>
requires (is_mutable)
autodata () const
 Access raw pointer.
 
const autodata () const
 Const access raw pointer.
 
template<typename OtherDerived >
requires (is_mutable && std::is_same_v<Impl, typename liebase_info<OtherDerived>::Impl>)
Derivedoperator= (const LieGroupBase< OtherDerived > &o) noexcept
 
Eigen::Index dof () const noexcept
 Dynamic size (degrees of freedom).
 
void setIdentity () noexcept
 Set to group identity element.
 
void setRandom () noexcept
 Set to a random element.
 
Matrix matrix () const noexcept
 Return as matrix Lie group element in \( \mathbb{R}^{\mathtt{dim} \times \mathtt{dim}} \).
 
template<typename OtherDerived >
requires (std::is_same_v<Impl, typename liebase_info<OtherDerived>::Impl>)
bool isApprox (const LieGroupBase< OtherDerived > &o, const Scalar &eps=Eigen::NumTraits< Scalar >::dummy_precision()) const noexcept
 Check if (approximately) equal to other element o.
 
template<typename NewScalar >
CastT< NewScalarcast () const noexcept
 Cast to different scalar type.
 
template<typename OtherDerived >
requires (std::is_same_v<Impl, typename liebase_info<OtherDerived>::Impl>)
PlainObject operator* (const LieGroupBase< OtherDerived > &o) const noexcept
 Group binary composition operation.
 
template<typename OtherDerived >
requires (is_mutable && std::is_same_v<Impl, typename liebase_info<OtherDerived>::Impl>)
Derivedoperator*= (const LieGroupBase< OtherDerived > &o) noexcept
 Inplace group binary composition operation.
 
PlainObject inverse () const noexcept
 Group inverse operation.
 
Tangent log () const noexcept
 Lie group logarithm.
 
TangentMap Ad () const noexcept
 Lie group adjoint.
 
template<typename TangentDerived >
PlainObject operator+ (const Eigen::MatrixBase< TangentDerived > &a) const noexcept
 Right-plus.
 
template<typename TangentDerived >
requires (is_mutable)
Derivedoperator+= (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Inplace right-plus: \( \mathbf{x} \leftarrow \mathbf{x} \circ \exp(\mathbf{a}) \).
 
template<typename OtherDerived >
requires (std::is_same_v<Impl, typename liebase_info<OtherDerived>::Impl>)
Tangent operator- (const LieGroupBase< OtherDerived > &xo) const noexcept
 Right-minus.
 
- Static Public Member Functions inherited from LieGroupBase< Derived >
static PlainObject Identity () noexcept
 Construct the identity element.
 
static PlainObject Random () noexcept
 Construct a random element.
 
template<typename TangentDerived >
static PlainObject exp (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Lie group exponential map.
 
template<typename TangentDerived >
static Matrix hat (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Lie algebra hat map.
 
template<typename MatrixDerived >
static Tangent vee (const Eigen::MatrixBase< MatrixDerived > &A) noexcept
 Lie alebra vee map.
 
template<typename TangentDerived >
static TangentMap ad (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Lie algebra adjoint.
 
template<typename TangentDerived1 , typename TangentDerived2 >
static Tangent lie_bracket (const Eigen::MatrixBase< TangentDerived1 > &a, const Eigen::MatrixBase< TangentDerived2 > &b) noexcept
 Lie algebra bracket.
 
template<typename TangentDerived >
static TangentMap dr_exp (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Right jacobian of the exponential map.
 
template<typename TangentDerived >
static TangentMap dr_expinv (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Inverse of right jacobian of the exponential map.
 
template<typename TangentDerived >
static TangentMap dl_exp (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Left jacobian of the exponential map.
 
template<typename TangentDerived >
static TangentMap dl_expinv (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Inverse of left jacobian of the exponential map.
 
template<typename TangentDerived >
static Hessian d2r_exp (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Right Hessian of the exponential map.
 
template<typename TangentDerived >
static Hessian d2r_expinv (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Right Hessian of the log map.
 
template<typename TangentDerived >
static Hessian d2l_exp (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Left Hessian of the exponential map.
 
template<typename TangentDerived >
static Hessian d2l_expinv (const Eigen::MatrixBase< TangentDerived > &a) noexcept
 Left Hessian of the log map.
 
- Public Attributes inherited from SE2Base< Map< SE2< _Scalar > > >
 SMOOTH_INHERIT_TYPEDEFS
 
- Static Public Attributes inherited from LieGroupBase< Derived >
static constexpr int RepSize = Impl::RepSize
 Number of scalars in internal representation.
 
static constexpr int Dof = Impl::Dof
 Degrees of freedom of manifold (equal to tangent space dimension).
 
static constexpr int Dim = Impl::Dim
 Side of Lie group matrix representation.
 
static constexpr bool IsCommutative = Impl::IsCommutative
 Commutativity of group. A commutative group has a zero Lie bracket.
 
- Protected Types inherited from LieGroupBase< Derived >
using traits = liebase_info< Derived >
 CRTP traits.
 
using Impl = typename traits::Impl
 Group-specific Lie group implementation.
 
- Static Protected Attributes inherited from LieGroupBase< Derived >
static constexpr bool is_mutable = traits::is_mutable
 True if underlying storage supports modification.
 

Detailed Description

template<typename _Scalar>
class Map< SE2< _Scalar > >

Memory mapping of SE2 Lie group.

See also
SE2Base for memory layout.

Definition at line 220 of file se2.hpp.


The documentation for this class was generated from the following file: