Main MRPT website > C++ reference
mrpt::poses::CPose< DERIVEDCLASS > Class Template Reference

## Detailed Description

### template<class DERIVEDCLASS> class mrpt::poses::CPose< DERIVEDCLASS >

A base class for representing a pose in 2D or 3D.

Note
This class is based on the CRTP design pattern
CPoseOrPoint, CPoint

Definition at line 25 of file CPose.h.

#include <mrpt/poses/CPose.h>

Inheritance diagram for mrpt::poses::CPose< DERIVEDCLASS >:
[legend]

## Public Member Functions

CPose3D operator- (const CPose3D &b) const
The operator is the pose inverse compounding operator. More...

double x () const
Common members of all points & poses classes. More...

double & x ()

void x (const double v)

double y () const

double & y ()

void y (const double v)

void x_incr (const double v)

void y_incr (const double v)

template<class OTHERCLASS >
double sqrDistanceTo (const CPoseOrPoint< OTHERCLASS > &b) const
Returns the squared euclidean distance to another pose/point: More...

template<class OTHERCLASS >
double distanceTo (const CPoseOrPoint< OTHERCLASS > &b) const
Returns the Euclidean distance to another pose/point: More...

double distanceTo (const mrpt::math::TPoint3D &b) const
Returns the euclidean distance to a 3D point: More...

double distance2DToSquare (double ax, double ay) const
Returns the squared 2D distance from this pose/point to a 2D point (ignores Z, if it exists). More...

double distance3DToSquare (double ax, double ay, double az) const
Returns the squared 3D distance from this pose/point to a 3D point. More...

double distance2DTo (double ax, double ay) const
Returns the 2D distance from this pose/point to a 2D point (ignores Z, if it exists). More...

double distance3DTo (double ax, double ay, double az) const
Returns the 3D distance from this pose/point to a 3D point. More...

double norm () const
Returns the euclidean norm of vector: . More...

vector_double getAsVectorVal () const
Return the pose or point as a 1xN vector with all the components (see derived classes for each implementation) More...

CMatrixDouble44 getHomogeneousMatrixVal () const
Returns the corresponding 4x4 homogeneous transformation matrix for the point(translation) or pose (translation+orientation). More...

void getInverseHomogeneousMatrix (math::CMatrixDouble44 &out_HM) const
Returns the corresponding 4x4 inverse homogeneous transformation matrix for this point or pose. More...

mrpt::math::CMatrixDouble44 getInverseHomogeneousMatrix () const

static bool is3DPoseOrPoint ()
Return true for poses or points with a Z component, false otherwise. More...

## ◆ distance2DTo()

template<class DERIVEDCLASS>
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::distance2DTo ( double ax, double ay ) const
inlineinherited

Returns the 2D distance from this pose/point to a 2D point (ignores Z, if it exists).

Definition at line 165 of file CPoseOrPoint.h.

## ◆ distance2DToSquare()

template<class DERIVEDCLASS>
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::distance2DToSquare ( double ax, double ay ) const
inlineinherited

Returns the squared 2D distance from this pose/point to a 2D point (ignores Z, if it exists).

Definition at line 157 of file CPoseOrPoint.h.

## ◆ distance3DTo()

template<class DERIVEDCLASS>
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::distance3DTo ( double ax, double ay, double az ) const
inlineinherited

Returns the 3D distance from this pose/point to a 3D point.

Definition at line 168 of file CPoseOrPoint.h.

## ◆ distance3DToSquare()

template<class DERIVEDCLASS>
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::distance3DToSquare ( double ax, double ay, double az ) const
inlineinherited

Returns the squared 3D distance from this pose/point to a 3D point.

Definition at line 160 of file CPoseOrPoint.h.

## ◆ distanceTo() [1/2]

template<class DERIVEDCLASS>
template<class OTHERCLASS >
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::distanceTo ( const CPoseOrPoint< OTHERCLASS > & b ) const
inlineinherited

Returns the Euclidean distance to another pose/point:

Definition at line 151 of file CPoseOrPoint.h.

## ◆ distanceTo() [2/2]

template<class DERIVEDCLASS>
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::distanceTo ( const mrpt::math::TPoint3D & b ) const
inlineinherited

Returns the euclidean distance to a 3D point:

Definition at line 171 of file CPoseOrPoint.h.

## ◆ getAsVectorVal()

template<class DERIVEDCLASS>
 vector_double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::getAsVectorVal ( ) const
inlineinherited

Return the pose or point as a 1xN vector with all the components (see derived classes for each implementation)

Definition at line 180 of file CPoseOrPoint.h.

## ◆ getHomogeneousMatrixVal()

template<class DERIVEDCLASS>
 CMatrixDouble44 mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::getHomogeneousMatrixVal ( ) const
inlineinherited

Returns the corresponding 4x4 homogeneous transformation matrix for the point(translation) or pose (translation+orientation).

getInverseHomogeneousMatrix

Definition at line 190 of file CPoseOrPoint.h.

## ◆ getInverseHomogeneousMatrix() [1/2]

template<class DERIVEDCLASS>
 void mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::getInverseHomogeneousMatrix ( math::CMatrixDouble44 & out_HM ) const
inlineinherited

Returns the corresponding 4x4 inverse homogeneous transformation matrix for this point or pose.

getHomogeneousMatrix

Definition at line 200 of file CPoseOrPoint.h.

Referenced by mrpt::poses::CPose< CPose3DQuat >::operator-().

## ◆ getInverseHomogeneousMatrix() [2/2]

template<class DERIVEDCLASS>
 mrpt::math::CMatrixDouble44 mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::getInverseHomogeneousMatrix ( ) const
inlineinherited

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 207 of file CPoseOrPoint.h.

## ◆ is3DPoseOrPoint()

template<class DERIVEDCLASS>
 static bool mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::is3DPoseOrPoint ( )
inlinestaticinherited

Return true for poses or points with a Z component, false otherwise.

Definition at line 130 of file CPoseOrPoint.h.

## ◆ norm()

template<class DERIVEDCLASS>
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::norm ( ) const
inlineinherited

Returns the euclidean norm of vector: .

Definition at line 174 of file CPoseOrPoint.h.

## ◆ operator-()

template<class DERIVEDCLASS >
 CPose3D mrpt::poses::CPose< DERIVEDCLASS >::operator- ( const CPose3D & b ) const

The operator is the pose inverse compounding operator.

Definition at line 535 of file CPose3D.h.

## ◆ sqrDistanceTo()

template<class DERIVEDCLASS>
template<class OTHERCLASS >
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::sqrDistanceTo ( const CPoseOrPoint< OTHERCLASS > & b ) const
inlineinherited

Returns the squared euclidean distance to another pose/point:

Definition at line 133 of file CPoseOrPoint.h.

## ◆ x() [1/3]

template<class DERIVEDCLASS>
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::x ( ) const
inlineinherited

## ◆ x() [2/3]

template<class DERIVEDCLASS>
 double& mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::x ( )
inlineinherited

Definition at line 119 of file CPoseOrPoint.h.

## ◆ x() [3/3]

template<class DERIVEDCLASS>
 void mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::x ( const double v )
inlineinherited
Parameters
 v Set X coord.

Definition at line 122 of file CPoseOrPoint.h.

## ◆ x_incr()

template<class DERIVEDCLASS>
 void mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::x_incr ( const double v )
inlineinherited
Parameters
 v X+=v

Definition at line 125 of file CPoseOrPoint.h.

## ◆ y() [1/3]

template<class DERIVEDCLASS>
 double mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::y ( ) const
inlineinherited

## ◆ y() [2/3]

template<class DERIVEDCLASS>
 double& mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::y ( )
inlineinherited

Definition at line 120 of file CPoseOrPoint.h.

## ◆ y() [3/3]

template<class DERIVEDCLASS>
 void mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::y ( const double v )
inlineinherited
Parameters
 v Set Y coord.

Definition at line 123 of file CPoseOrPoint.h.

## ◆ y_incr()

template<class DERIVEDCLASS>
 void mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::y_incr ( const double v )
inlineinherited
Parameters
 v Y+=v

Definition at line 126 of file CPoseOrPoint.h.

 Page generated by Doxygen 1.8.14 for MRPT 1.1.0 SVN: at lun oct 28 00:54:49 CET 2019 Hosted on: