Main MRPT website > C++ reference for MRPT 1.5.3
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | Private Types
Sophus::SE3< Scalar_, Options > Class Template Reference

Detailed Description

template<class Scalar_, int Options>
class Sophus::SE3< Scalar_, Options >

Definition at line 8 of file se3.hpp.

#include <mrpt/otherlibs/sophus/se3.hpp>

Inheritance diagram for Sophus::SE3< Scalar_, Options >:
Inheritance graph

Public Types

using Scalar = Scalar_
 
using Transformation = typename Base::Transformation
 
using Point = typename Base::Point
 
using Tangent = typename Base::Tangent
 
using Adjoint = typename Base::Adjoint
 
using SO3Member = SO3< Scalar, Options >
 
using TranslationMember = Vector3< Scalar, Options >
 
using TranslationType = typename Eigen::internal::traits< SE3< Scalar_, Options > >::TranslationType
 
using SO3Type = typename Eigen::internal::traits< SE3< Scalar_, Options > >::SO3Type
 
using QuaternionType = typename SO3Type::QuaternionType
 

Public Member Functions

EIGEN_MAKE_ALIGNED_OPERATOR_NEW SOPHUS_FUNC SE3 ()
 
template<class OtherDerived >
SOPHUS_FUNC SE3 (SE3Base< OtherDerived > const &other)
 
template<class OtherDerived , class D >
SOPHUS_FUNC SE3 (SO3Base< OtherDerived > const &so3, Eigen::MatrixBase< D > const &translation)
 
SOPHUS_FUNC SE3 (Matrix3< Scalar > const &rotation_matrix, Point const &translation)
 
SOPHUS_FUNC SE3 (Eigen::Quaternion< Scalar > const &quaternion, Point const &translation)
 
SOPHUS_FUNC SE3 (Matrix4< Scalar > const &T)
 
SOPHUS_FUNC Scalardata ()
 
SOPHUS_FUNC Scalar const * data () const
 
SOPHUS_FUNC SO3Memberso3 ()
 
SOPHUS_FUNC SO3Member const & so3 () const
 
SOPHUS_FUNC TranslationMembertranslation ()
 
SOPHUS_FUNC TranslationMember const & translation () const
 
SOPHUS_FUNC Adjoint Adj () const
 
SOPHUS_FUNC SE3< NewScalarType > cast () const
 
SOPHUS_FUNC Vector< Scalar, num_parametersinternalMultiplyByGenerator (int i) const
 
SOPHUS_FUNC Matrix< Scalar, num_parameters, DoFinternalJacobian () const
 
SOPHUS_FUNC SE3< Scalarinverse () const
 
SOPHUS_FUNC Tangent log () const
 
SOPHUS_FUNC void normalize ()
 
SOPHUS_FUNC Transformation matrix () const
 
SOPHUS_FUNC Matrix< Scalar, 3, 4 > matrix3x4 () const
 
SOPHUS_FUNC SE3< Scalaroperator* (SE3< Scalar > const &other) const
 
SOPHUS_FUNC Point operator* (Point const &p) const
 
SOPHUS_FUNC SE3Base< SE3< Scalar_, Options > > & operator*= (SE3< Scalar > const &other)
 
SOPHUS_FUNC Matrix3< ScalarrotationMatrix () const
 
SOPHUS_FUNC void setQuaternion (Eigen::Quaternion< Scalar > const &quat)
 
SOPHUS_FUNC void setRotationMatrix (Matrix3< Scalar > const &rotation_matrix)
 
SOPHUS_FUNC QuaternionType const & unit_quaternion () const
 

Static Public Member Functions

template<class T0 , class T1 , class T2 >
static SOPHUS_FUNC SE3 trans (T0 const &x, T1 const &y, T2 const &z)
 
static SOPHUS_FUNC SE3 transX (Scalar const &x)
 
static SOPHUS_FUNC SE3 transY (Scalar const &y)
 
static SOPHUS_FUNC SE3 transZ (Scalar const &z)
 
static SOPHUS_FUNC SE3 rotX (Scalar const &x)
 
static SOPHUS_FUNC SE3 rotY (Scalar const &y)
 
static SOPHUS_FUNC SE3 rotZ (Scalar const &z)
 
static SOPHUS_FUNC Tangent log (SE3< Scalar > const &se3)
 
static SOPHUS_FUNC Adjoint d_lieBracketab_by_d_a (Tangent const &b)
 
static SOPHUS_FUNC SE3< Scalarexp (Tangent const &a)
 
static SOPHUS_FUNC Transformation generator (int i)
 
static SOPHUS_FUNC void internalGenerator (int i, Eigen::Quaternion< Scalar > *internal_gen_q, Vector3< Scalar > *internal_gen_t)
 
static SOPHUS_FUNC Transformation hat (Tangent const &a)
 
static SOPHUS_FUNC Tangent lieBracket (Tangent const &a, Tangent const &b)
 
static SOPHUS_FUNC Tangent vee (Transformation const &Omega)
 

Static Public Attributes

static int constexpr DoF
 
static int constexpr num_parameters
 
static int constexpr N
 

Protected Attributes

SO3Member so3_
 
TranslationMember translation_
 

Private Types

using Base = SE3Base< SE3< Scalar_, Options > >
 

Member Typedef Documentation

◆ Adjoint

template<class Scalar_, int Options>
using Sophus::SE3< Scalar_, Options >::Adjoint = typename Base::Adjoint

Definition at line 503 of file se3.hpp.

◆ Base

template<class Scalar_, int Options>
using Sophus::SE3< Scalar_, Options >::Base = SE3Base<SE3<Scalar_, Options> >
private

Definition at line 496 of file se3.hpp.

◆ Point

template<class Scalar_, int Options>
using Sophus::SE3< Scalar_, Options >::Point = typename Base::Point

Definition at line 501 of file se3.hpp.

◆ QuaternionType

using Sophus::SE3Base< SE3< Scalar_, Options > >::QuaternionType = typename SO3Type::QuaternionType
inherited

Definition at line 61 of file se3.hpp.

◆ Scalar

template<class Scalar_, int Options>
using Sophus::SE3< Scalar_, Options >::Scalar = Scalar_

Definition at line 499 of file se3.hpp.

◆ SO3Member

template<class Scalar_, int Options>
using Sophus::SE3< Scalar_, Options >::SO3Member = SO3<Scalar, Options>

Definition at line 504 of file se3.hpp.

◆ SO3Type

using Sophus::SE3Base< SE3< Scalar_, Options > >::SO3Type = typename Eigen::internal::traits<SE3< Scalar_, Options > >::SO3Type
inherited

Definition at line 60 of file se3.hpp.

◆ Tangent

template<class Scalar_, int Options>
using Sophus::SE3< Scalar_, Options >::Tangent = typename Base::Tangent

Definition at line 502 of file se3.hpp.

◆ Transformation

template<class Scalar_, int Options>
using Sophus::SE3< Scalar_, Options >::Transformation = typename Base::Transformation

Definition at line 500 of file se3.hpp.

◆ TranslationMember

template<class Scalar_, int Options>
using Sophus::SE3< Scalar_, Options >::TranslationMember = Vector3<Scalar, Options>

Definition at line 505 of file se3.hpp.

◆ TranslationType

using Sophus::SE3Base< SE3< Scalar_, Options > >::TranslationType = typename Eigen::internal::traits<SE3< Scalar_, Options > >::TranslationType
inherited

Definition at line 59 of file se3.hpp.

Constructor & Destructor Documentation

◆ SE3() [1/6]

template<class Scalar_, int Options>
EIGEN_MAKE_ALIGNED_OPERATOR_NEW SOPHUS_FUNC Sophus::SE3< Scalar_, Options >::SE3 ( )
inline

Definition at line 511 of file se3.hpp.

◆ SE3() [2/6]

template<class Scalar_, int Options>
template<class OtherDerived >
SOPHUS_FUNC Sophus::SE3< Scalar_, Options >::SE3 ( SE3Base< OtherDerived > const &  other)
inline

Definition at line 516 of file se3.hpp.

References exprtk::details::value().

◆ SE3() [3/6]

template<class Scalar_, int Options>
template<class OtherDerived , class D >
SOPHUS_FUNC Sophus::SE3< Scalar_, Options >::SE3 ( SO3Base< OtherDerived > const &  so3,
Eigen::MatrixBase< D > const &  translation 
)
inline

Definition at line 525 of file se3.hpp.

References SOPHUS_FUNC, and exprtk::details::value().

◆ SE3() [4/6]

template<class Scalar_, int Options>
SOPHUS_FUNC Sophus::SE3< Scalar_, Options >::SE3 ( Matrix3< Scalar > const &  rotation_matrix,
Point const &  translation 
)
inline

Definition at line 539 of file se3.hpp.

◆ SE3() [5/6]

template<class Scalar_, int Options>
SOPHUS_FUNC Sophus::SE3< Scalar_, Options >::SE3 ( Eigen::Quaternion< Scalar > const &  quaternion,
Point const &  translation 
)
inline

Definition at line 546 of file se3.hpp.

◆ SE3() [6/6]

template<class Scalar_, int Options>
SOPHUS_FUNC Sophus::SE3< Scalar_, Options >::SE3 ( Matrix4< Scalar > const &  T)
inlineexplicit

Definition at line 555 of file se3.hpp.

References Sophus::Constants< Scalar >::epsilon(), and SOPHUS_ENSURE.

Member Function Documentation

◆ Adj()

SOPHUS_FUNC Adjoint Sophus::SE3Base< SE3< Scalar_, Options > >::Adj ( ) const
inlineinherited

Definition at line 80 of file se3.hpp.

References Sophus::SO3Base< SO3< Scalar_, Options > >::hat().

◆ cast()

SOPHUS_FUNC SE3<NewScalarType> Sophus::SE3Base< SE3< Scalar_, Options > >::cast ( ) const
inlineinherited

Definition at line 93 of file se3.hpp.

◆ d_lieBracketab_by_d_a()

static SOPHUS_FUNC Adjoint Sophus::SE3Base< SE3< Scalar_, Options > >::d_lieBracketab_by_d_a ( Tangent const &  b)
inlinestaticinherited

Definition at line 268 of file se3.hpp.

◆ data() [1/2]

template<class Scalar_, int Options>
SOPHUS_FUNC Scalar* Sophus::SE3< Scalar_, Options >::data ( )
inline

Definition at line 611 of file se3.hpp.

◆ data() [2/2]

template<class Scalar_, int Options>
SOPHUS_FUNC Scalar const* Sophus::SE3< Scalar_, Options >::data ( ) const
inline

Definition at line 618 of file se3.hpp.

◆ exp()

static SOPHUS_FUNC SE3<Scalar> Sophus::SE3Base< SE3< Scalar_, Options > >::exp ( Tangent const &  a)
inlinestaticinherited

◆ generator()

static SOPHUS_FUNC Transformation Sophus::SE3Base< SE3< Scalar_, Options > >::generator ( int  i)
inlinestaticinherited

Definition at line 352 of file se3.hpp.

References exprtk::details::numeric::constant::e, and SOPHUS_ENSURE.

◆ hat()

static SOPHUS_FUNC Transformation Sophus::SE3Base< SE3< Scalar_, Options > >::hat ( Tangent const &  a)
inlinestaticinherited

Definition at line 394 of file se3.hpp.

◆ internalGenerator()

static SOPHUS_FUNC void Sophus::SE3Base< SE3< Scalar_, Options > >::internalGenerator ( int  i,
Eigen::Quaternion< Scalar > *  internal_gen_q,
Vector3< Scalar > *  internal_gen_t 
)
inlinestaticinherited

◆ internalJacobian()

SOPHUS_FUNC Matrix<Scalar, num_parameters, DoF> Sophus::SE3Base< SE3< Scalar_, Options > >::internalJacobian ( ) const
inlineinherited

Definition at line 117 of file se3.hpp.

◆ internalMultiplyByGenerator()

SOPHUS_FUNC Vector<Scalar, num_parameters> Sophus::SE3Base< SE3< Scalar_, Options > >::internalMultiplyByGenerator ( int  i) const
inlineinherited

Definition at line 100 of file se3.hpp.

◆ inverse()

SOPHUS_FUNC SE3<Scalar> Sophus::SE3Base< SE3< Scalar_, Options > >::inverse ( ) const
inlineinherited

Definition at line 127 of file se3.hpp.

References Sophus::SO3Base< Derived >::inverse().

◆ lieBracket()

static SOPHUS_FUNC Tangent Sophus::SE3Base< SE3< Scalar_, Options > >::lieBracket ( Tangent const &  a,
Tangent const &  b 
)
inlinestaticinherited

Definition at line 412 of file se3.hpp.

◆ log() [1/2]

SOPHUS_FUNC Tangent Sophus::SE3Base< SE3< Scalar_, Options > >::log ( ) const
inlineinherited

Definition at line 136 of file se3.hpp.

References Sophus::SE3Base< Derived >::log().

◆ log() [2/2]

static SOPHUS_FUNC Tangent Sophus::SE3Base< SE3< Scalar_, Options > >::log ( SE3< Scalar > const &  se3)
inlinestaticinherited

◆ matrix()

SOPHUS_FUNC Transformation Sophus::SE3Base< SE3< Scalar_, Options > >::matrix ( ) const
inlineinherited

Definition at line 155 of file se3.hpp.

◆ matrix3x4()

SOPHUS_FUNC Matrix<Scalar, 3, 4> Sophus::SE3Base< SE3< Scalar_, Options > >::matrix3x4 ( ) const
inlineinherited

Definition at line 165 of file se3.hpp.

◆ normalize()

SOPHUS_FUNC void Sophus::SE3Base< SE3< Scalar_, Options > >::normalize ( )
inlineinherited

Definition at line 143 of file se3.hpp.

◆ operator*() [1/2]

SOPHUS_FUNC SE3<Scalar> Sophus::SE3Base< SE3< Scalar_, Options > >::operator* ( SE3< Scalar > const &  other) const
inlineinherited

Definition at line 183 of file se3.hpp.

◆ operator*() [2/2]

SOPHUS_FUNC Point Sophus::SE3Base< SE3< Scalar_, Options > >::operator* ( Point const &  p) const
inlineinherited

Definition at line 197 of file se3.hpp.

◆ operator*=()

SOPHUS_FUNC SE3Base<SE3< Scalar_, Options > >& Sophus::SE3Base< SE3< Scalar_, Options > >::operator*= ( SE3< Scalar > const &  other)
inlineinherited

◆ rotationMatrix()

SOPHUS_FUNC Matrix3<Scalar> Sophus::SE3Base< SE3< Scalar_, Options > >::rotationMatrix ( ) const
inlineinherited

Definition at line 211 of file se3.hpp.

◆ rotX()

template<class Scalar_, int Options>
static SOPHUS_FUNC SE3 Sophus::SE3< Scalar_, Options >::rotX ( Scalar const &  x)
inlinestatic

Definition at line 590 of file se3.hpp.

◆ rotY()

template<class Scalar_, int Options>
static SOPHUS_FUNC SE3 Sophus::SE3< Scalar_, Options >::rotY ( Scalar const &  y)
inlinestatic

Definition at line 596 of file se3.hpp.

◆ rotZ()

template<class Scalar_, int Options>
static SOPHUS_FUNC SE3 Sophus::SE3< Scalar_, Options >::rotZ ( Scalar const &  z)
inlinestatic

Definition at line 602 of file se3.hpp.

◆ setQuaternion()

SOPHUS_FUNC void Sophus::SE3Base< SE3< Scalar_, Options > >::setQuaternion ( Eigen::Quaternion< Scalar > const &  quat)
inlineinherited

Definition at line 227 of file se3.hpp.

◆ setRotationMatrix()

SOPHUS_FUNC void Sophus::SE3Base< SE3< Scalar_, Options > >::setRotationMatrix ( Matrix3< Scalar > const &  rotation_matrix)
inlineinherited

Definition at line 235 of file se3.hpp.

◆ so3() [1/2]

template<class Scalar_, int Options>
SOPHUS_FUNC SO3Member& Sophus::SE3< Scalar_, Options >::so3 ( )
inline

◆ so3() [2/2]

template<class Scalar_, int Options>
SOPHUS_FUNC SO3Member const& Sophus::SE3< Scalar_, Options >::so3 ( ) const
inline

Definition at line 629 of file se3.hpp.

◆ trans()

template<class Scalar_, int Options>
template<class T0 , class T1 , class T2 >
static SOPHUS_FUNC SE3 Sophus::SE3< Scalar_, Options >::trans ( T0 const &  x,
T1 const &  y,
T2 const &  z 
)
inlinestatic

◆ translation() [1/2]

template<class Scalar_, int Options>
SOPHUS_FUNC TranslationMember& Sophus::SE3< Scalar_, Options >::translation ( )
inline

◆ translation() [2/2]

template<class Scalar_, int Options>
SOPHUS_FUNC TranslationMember const& Sophus::SE3< Scalar_, Options >::translation ( ) const
inline

Definition at line 637 of file se3.hpp.

◆ transX()

template<class Scalar_, int Options>
static SOPHUS_FUNC SE3 Sophus::SE3< Scalar_, Options >::transX ( Scalar const &  x)
inlinestatic

Definition at line 572 of file se3.hpp.

References Sophus::SE3< Scalar_, Options >::trans().

◆ transY()

template<class Scalar_, int Options>
static SOPHUS_FUNC SE3 Sophus::SE3< Scalar_, Options >::transY ( Scalar const &  y)
inlinestatic

Definition at line 578 of file se3.hpp.

References Sophus::SE3< Scalar_, Options >::trans().

◆ transZ()

template<class Scalar_, int Options>
static SOPHUS_FUNC SE3 Sophus::SE3< Scalar_, Options >::transZ ( Scalar const &  z)
inlinestatic

Definition at line 584 of file se3.hpp.

References Sophus::SE3< Scalar_, Options >::trans().

◆ unit_quaternion()

SOPHUS_FUNC QuaternionType const& Sophus::SE3Base< SE3< Scalar_, Options > >::unit_quaternion ( ) const
inlineinherited

Definition at line 253 of file se3.hpp.

◆ vee()

static SOPHUS_FUNC Tangent Sophus::SE3Base< SE3< Scalar_, Options > >::vee ( Transformation const &  Omega)
inlinestaticinherited

Definition at line 484 of file se3.hpp.

Member Data Documentation

◆ DoF

int constexpr Sophus::SE3Base< SE3< Scalar_, Options > >::DoF
staticinherited

Definition at line 64 of file se3.hpp.

◆ N

int constexpr Sophus::SE3Base< SE3< Scalar_, Options > >::N
staticinherited

Definition at line 69 of file se3.hpp.

◆ num_parameters

int constexpr Sophus::SE3Base< SE3< Scalar_, Options > >::num_parameters
staticinherited

Definition at line 67 of file se3.hpp.

◆ so3_

template<class Scalar_, int Options>
SO3Member Sophus::SE3< Scalar_, Options >::so3_
protected

Definition at line 642 of file se3.hpp.

◆ translation_

template<class Scalar_, int Options>
TranslationMember Sophus::SE3< Scalar_, Options >::translation_
protected

Definition at line 643 of file se3.hpp.




Page generated by Doxygen 1.8.13 for MRPT 1.5.3 at Tue Aug 22 01:03:35 UTC 2017