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 Member Functions | Protected Attributes | Private Types | Friends
Sophus::SO3< Scalar_, Options > Class Template Reference

Detailed Description

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

Definition at line 14 of file so3.hpp.

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

Inheritance diagram for Sophus::SO3< 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 QuaternionMember = Eigen::Quaternion< Scalar, Options >
 
using QuaternionType = typename Eigen::internal::traits< SO3< Scalar_, Options > >::QuaternionType
 

Public Member Functions

EIGEN_MAKE_ALIGNED_OPERATOR_NEW SOPHUS_FUNC SO3 ()
 
template<class OtherDerived >
SOPHUS_FUNC SO3 (SO3Base< OtherDerived > const &other)
 
SOPHUS_FUNC SO3 (Transformation const &R)
 
template<class D >
SOPHUS_FUNC SO3 (Eigen::QuaternionBase< D > const &quat)
 
SOPHUS_FUNC QuaternionMember const & unit_quaternion () const
 
SOPHUS_FUNC Adjoint Adj () const
 
SOPHUS_FUNC SO3< NewScalarType > cast () const
 
SOPHUS_FUNC Scalardata ()
 
SOPHUS_FUNC Scalar const * data () const
 
SOPHUS_FUNC Vector< Scalar, num_parametersinternalMultiplyByGenerator (int i) const
 
SOPHUS_FUNC Matrix< Scalar, num_parameters, DoFinternalJacobian () const
 
SOPHUS_FUNC SO3< Scalarinverse () const
 
SOPHUS_FUNC Tangent log () const
 
SOPHUS_FUNC void normalize ()
 
SOPHUS_FUNC Transformation matrix () const
 
SOPHUS_FUNC SO3< Scalaroperator* (SO3< Scalar > const &other) const
 
SOPHUS_FUNC Point operator* (Point const &p) const
 
SOPHUS_FUNC SO3Base< SO3< Scalar_, Options > > & operator*= (SO3< Scalar > const &other)
 
SOPHUS_FUNC void setQuaternion (Eigen::Quaternion< Scalar > const &quaternion)
 

Static Public Member Functions

static SOPHUS_FUNC SO3 rotX (Scalar const &x)
 
static SOPHUS_FUNC SO3 rotY (Scalar const &y)
 
static SOPHUS_FUNC SO3 rotZ (Scalar const &z)
 
static SOPHUS_FUNC Tangent log (SO3< Scalar > const &other)
 
static SOPHUS_FUNC Adjoint d_lieBracketab_by_d_a (Tangent const &b)
 
static SOPHUS_FUNC SO3< Scalarexp (Tangent const &omega)
 
static SOPHUS_FUNC SO3< ScalarexpAndTheta (Tangent const &omega, Scalar *theta)
 
static SOPHUS_FUNC Transformation generator (int i)
 
static SOPHUS_FUNC void internalGenerator (int i, Eigen::Quaternion< Scalar > *internal_gen_q)
 
static SOPHUS_FUNC Transformation hat (Tangent const &omega)
 
static SOPHUS_FUNC Tangent lieBracket (Tangent const &omega1, Tangent const &omega2)
 
static SOPHUS_FUNC Tangent logAndTheta (SO3< Scalar > const &other, Scalar *theta)
 
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 Member Functions

SOPHUS_FUNC QuaternionMemberunit_quaternion_nonconst ()
 

Protected Attributes

QuaternionMember unit_quaternion_
 

Private Types

using Base = SO3Base< SO3< Scalar_, Options > >
 

Friends

class SO3Base< SO3< Scalar, Options > >
 

Member Typedef Documentation

◆ Adjoint

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

Definition at line 495 of file so3.hpp.

◆ Base

template<class Scalar_, int Options>
using Sophus::SO3< Scalar_, Options >::Base = SO3Base<SO3<Scalar_, Options> >
private

Definition at line 488 of file so3.hpp.

◆ Point

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

Definition at line 493 of file so3.hpp.

◆ QuaternionMember

template<class Scalar_, int Options>
using Sophus::SO3< Scalar_, Options >::QuaternionMember = Eigen::Quaternion<Scalar, Options>

Definition at line 496 of file so3.hpp.

◆ QuaternionType

using Sophus::SO3Base< SO3< Scalar_, Options > >::QuaternionType = typename Eigen::internal::traits<SO3< Scalar_, Options > >::QuaternionType
inherited

Definition at line 73 of file so3.hpp.

◆ Scalar

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

Definition at line 491 of file so3.hpp.

◆ Tangent

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

Definition at line 494 of file so3.hpp.

◆ Transformation

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

Definition at line 492 of file so3.hpp.

Constructor & Destructor Documentation

◆ SO3() [1/4]

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

Definition at line 506 of file so3.hpp.

◆ SO3() [2/4]

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

Definition at line 512 of file so3.hpp.

◆ SO3() [3/4]

template<class Scalar_, int Options>
SOPHUS_FUNC Sophus::SO3< Scalar_, Options >::SO3 ( Transformation const &  R)
inline

Definition at line 519 of file so3.hpp.

◆ SO3() [4/4]

template<class Scalar_, int Options>
template<class D >
SOPHUS_FUNC Sophus::SO3< Scalar_, Options >::SO3 ( Eigen::QuaternionBase< D > const &  quat)
inlineexplicit

Definition at line 526 of file so3.hpp.

Member Function Documentation

◆ Adj()

SOPHUS_FUNC Adjoint Sophus::SO3Base< SO3< Scalar_, Options > >::Adj ( ) const
inlineinherited

Definition at line 94 of file so3.hpp.

◆ cast()

SOPHUS_FUNC SO3<NewScalarType> Sophus::SO3Base< SO3< Scalar_, Options > >::cast ( ) const
inlineinherited

Definition at line 99 of file so3.hpp.

◆ d_lieBracketab_by_d_a()

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

Definition at line 257 of file so3.hpp.

◆ data() [1/2]

SOPHUS_FUNC Scalar* Sophus::SO3Base< SO3< Scalar_, Options > >::data ( )
inlineinherited

Definition at line 111 of file so3.hpp.

◆ data() [2/2]

SOPHUS_FUNC Scalar const* Sophus::SO3Base< SO3< Scalar_, Options > >::data ( ) const
inlineinherited

Definition at line 117 of file so3.hpp.

◆ exp()

static SOPHUS_FUNC SO3<Scalar> Sophus::SO3Base< SO3< Scalar_, Options > >::exp ( Tangent const &  omega)
inlinestaticinherited

◆ expAndTheta()

static SOPHUS_FUNC SO3<Scalar> Sophus::SO3Base< SO3< Scalar_, Options > >::expAndTheta ( Tangent const &  omega,
Scalar theta 
)
inlinestaticinherited

◆ generator()

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

Definition at line 332 of file so3.hpp.

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

◆ hat()

static SOPHUS_FUNC Transformation Sophus::SO3Base< SO3< Scalar_, Options > >::hat ( Tangent const &  omega)
inlinestaticinherited

◆ internalGenerator()

static SOPHUS_FUNC void Sophus::SO3Base< SO3< Scalar_, Options > >::internalGenerator ( int  i,
Eigen::Quaternion< Scalar > *  internal_gen_q 
)
inlinestaticinherited

Definition at line 344 of file so3.hpp.

References SOPHUS_ENSURE.

Referenced by Sophus::SE3Base< SE3< Scalar_, Options > >::internalGenerator().

◆ internalJacobian()

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

Definition at line 134 of file so3.hpp.

◆ internalMultiplyByGenerator()

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

Definition at line 123 of file so3.hpp.

◆ inverse()

SOPHUS_FUNC SO3<Scalar> Sophus::SO3Base< SO3< Scalar_, Options > >::inverse ( ) const
inlineinherited

Definition at line 144 of file so3.hpp.

◆ lieBracket()

static SOPHUS_FUNC Tangent Sophus::SO3Base< SO3< Scalar_, Options > >::lieBracket ( Tangent const &  omega1,
Tangent const &  omega2 
)
inlinestaticinherited

Definition at line 392 of file so3.hpp.

◆ log() [1/2]

SOPHUS_FUNC Tangent Sophus::SO3Base< SO3< Scalar_, Options > >::log ( ) const
inlineinherited

Definition at line 152 of file so3.hpp.

◆ log() [2/2]

static SOPHUS_FUNC Tangent Sophus::SO3Base< SO3< Scalar_, Options > >::log ( SO3< Scalar > const &  other)
inlinestaticinherited

Definition at line 407 of file so3.hpp.

◆ logAndTheta()

static SOPHUS_FUNC Tangent Sophus::SO3Base< SO3< Scalar_, Options > >::logAndTheta ( SO3< Scalar > const &  other,
Scalar theta 
)
inlinestaticinherited

◆ matrix()

SOPHUS_FUNC Transformation Sophus::SO3Base< SO3< Scalar_, Options > >::matrix ( ) const
inlineinherited

◆ normalize()

SOPHUS_FUNC void Sophus::SO3Base< SO3< Scalar_, Options > >::normalize ( )
inlineinherited

Definition at line 159 of file so3.hpp.

References SOPHUS_ENSURE, and Sophus::transpose().

◆ operator*() [1/2]

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

Definition at line 186 of file so3.hpp.

◆ operator*() [2/2]

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

Definition at line 206 of file so3.hpp.

◆ operator*=()

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

Definition at line 212 of file so3.hpp.

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

◆ rotX()

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

Definition at line 536 of file so3.hpp.

◆ rotY()

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

Definition at line 542 of file so3.hpp.

◆ rotZ()

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

Definition at line 548 of file so3.hpp.

◆ setQuaternion()

SOPHUS_FUNC void Sophus::SO3Base< SO3< Scalar_, Options > >::setQuaternion ( Eigen::Quaternion< Scalar > const &  quaternion)
inlineinherited

Definition at line 235 of file so3.hpp.

References normalize().

◆ unit_quaternion()

template<class Scalar_, int Options>
SOPHUS_FUNC QuaternionMember const& Sophus::SO3< Scalar_, Options >::unit_quaternion ( ) const
inline

◆ unit_quaternion_nonconst()

template<class Scalar_, int Options>
SOPHUS_FUNC QuaternionMember& Sophus::SO3< Scalar_, Options >::unit_quaternion_nonconst ( )
inlineprotected

Definition at line 561 of file so3.hpp.

◆ vee()

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

Definition at line 471 of file so3.hpp.

Friends And Related Function Documentation

◆ SO3Base< SO3< Scalar, Options > >

template<class Scalar_, int Options>
friend class SO3Base< SO3< Scalar, Options > >
friend

Definition at line 500 of file so3.hpp.

Member Data Documentation

◆ DoF

int constexpr Sophus::SO3Base< SO3< Scalar_, Options > >::DoF
staticinherited

Definition at line 76 of file so3.hpp.

◆ N

int constexpr Sophus::SO3Base< SO3< Scalar_, Options > >::N
staticinherited

Definition at line 80 of file so3.hpp.

◆ num_parameters

int constexpr Sophus::SO3Base< SO3< Scalar_, Options > >::num_parameters
staticinherited

Definition at line 78 of file so3.hpp.

◆ unit_quaternion_

template<class Scalar_, int Options>
QuaternionMember Sophus::SO3< Scalar_, Options >::unit_quaternion_
protected

Definition at line 565 of file so3.hpp.




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