Main MRPT website > C++ reference
MRPT logo
Public Member Functions | Private Attributes

mrpt::poses::CPoses2DSequence Class Reference


Detailed Description

This class stores a sequence of relative, incremental 2D poses.

It is useful as the bases storing unit for more complex probability particles and for computing the absolute pose of any intermediate pose.

See also:
CPose2D, CMultiMetricMap

Definition at line 46 of file CPoses2DSequence.h.

#include <mrpt/poses/CPoses2DSequence.h>

Inheritance diagram for mrpt::poses::CPoses2DSequence:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 CPoses2DSequence ()
 Default constructor.
size_t posesCount ()
 Returns the poses count in the sequence:
void getPose (unsigned int ind, CPose2D &outPose)
 Reads the stored pose at index "ind", where the first one is 0, the last "posesCount() - 1"

Exceptions:
std::exceptionOn invalid index value.

void changePose (unsigned int ind, CPose2D &inPose)
 Changes the stored pose at index "ind", where the first one is 0, the last "posesCount() - 1"

Exceptions:
std::exceptionOn invalid index value.

void appendPose (CPose2D &newPose)
 Appends a new pose at the end of sequence.
void clear ()
 Clears the sequence.
CPose2D absolutePoseOf (unsigned int n)
 Returns the absolute pose of a robot after moving "n" poses, so for "n=0" the origin pose (0,0,0deg) is returned, for "n=1" the first pose is returned, and for "n=posesCount()", the pose of robot after moving ALL poses is returned, all of them relative to the starting pose.
CPose2D absolutePoseAfterAll ()
 A shortcut for "absolutePoseOf( posesCount() )".
float computeTraveledDistanceAfter (unsigned int n)
 Returns the traveled distance after moving "n" poses, so for "n=0" it returns 0, for "n=1" the first traveled distance, and for "n=posesCount()", the total distance after ALL movements.
float computeTraveledDistanceAfterAll ()
 Returns the traveled distance after ALL movements.

Private Attributes

mrpt::aligned_containers
< CPose2D >::vector_t 
poses
 The internal sequence of poses, stored as relative, incremental poses, thus each one is situated just at the end point of last one, where the first one is referenced to (0,0,0deg)

RTTI stuff

typedef CPoses2DSequencePtr SmartPtr
static mrpt::utils::CLASSINIT _init_CPoses2DSequence
static mrpt::utils::TRuntimeClassId classCPoses2DSequence
static const
mrpt::utils::TRuntimeClassId
classinfo
static const
mrpt::utils::TRuntimeClassId
_GetBaseClass ()
virtual const
mrpt::utils::TRuntimeClassId
GetRuntimeClass () const
 Returns information about the class of an object in runtime.
virtual mrpt::utils::CObjectduplicate () const
 Returns a copy of the object, indepently of its class.
static mrpt::utils::CObjectCreateObject ()
static CPoses2DSequencePtr Create ()

Member Typedef Documentation

A typedef for the associated smart pointer

Definition at line 49 of file CPoses2DSequence.h.


Constructor & Destructor Documentation

mrpt::poses::CPoses2DSequence::CPoses2DSequence ( )

Default constructor.


Member Function Documentation

static const mrpt::utils::TRuntimeClassId* mrpt::poses::CPoses2DSequence::_GetBaseClass ( ) [static, protected]

Reimplemented from mrpt::utils::CSerializable.

CPose2D mrpt::poses::CPoses2DSequence::absolutePoseAfterAll ( )

A shortcut for "absolutePoseOf( posesCount() )".

See also:
absolutePoseOf, posesCount
CPose2D mrpt::poses::CPoses2DSequence::absolutePoseOf ( unsigned int  n)

Returns the absolute pose of a robot after moving "n" poses, so for "n=0" the origin pose (0,0,0deg) is returned, for "n=1" the first pose is returned, and for "n=posesCount()", the pose of robot after moving ALL poses is returned, all of them relative to the starting pose.

Exceptions:
std::exceptionOn invalid index value
See also:
absolutePoseAfterAll
void mrpt::poses::CPoses2DSequence::appendPose ( CPose2D newPose)

Appends a new pose at the end of sequence.

Remember that poses are relative, incremental to the last one.

void mrpt::poses::CPoses2DSequence::changePose ( unsigned int  ind,
CPose2D inPose 
)

Changes the stored pose at index "ind", where the first one is 0, the last "posesCount() - 1"

Exceptions:
std::exceptionOn invalid index value.

void mrpt::poses::CPoses2DSequence::clear ( )

Clears the sequence.

float mrpt::poses::CPoses2DSequence::computeTraveledDistanceAfter ( unsigned int  n)

Returns the traveled distance after moving "n" poses, so for "n=0" it returns 0, for "n=1" the first traveled distance, and for "n=posesCount()", the total distance after ALL movements.

Exceptions:
std::exceptionOn invalid index value
See also:
computeTraveledDistanceAfterAll
float mrpt::poses::CPoses2DSequence::computeTraveledDistanceAfterAll ( )

Returns the traveled distance after ALL movements.

A shortcut for "computeTraveledDistanceAfter( posesCount() )".

See also:
computeTraveledDistanceAfter
static CPoses2DSequencePtr mrpt::poses::CPoses2DSequence::Create ( ) [static]
static mrpt::utils::CObject* mrpt::poses::CPoses2DSequence::CreateObject ( ) [static]
virtual mrpt::utils::CObject* mrpt::poses::CPoses2DSequence::duplicate ( ) const [virtual]

Returns a copy of the object, indepently of its class.

Implements mrpt::utils::CObject.

void mrpt::poses::CPoses2DSequence::getPose ( unsigned int  ind,
CPose2D outPose 
)

Reads the stored pose at index "ind", where the first one is 0, the last "posesCount() - 1"

Exceptions:
std::exceptionOn invalid index value.

virtual const mrpt::utils::TRuntimeClassId* mrpt::poses::CPoses2DSequence::GetRuntimeClass ( ) const [virtual]

Returns information about the class of an object in runtime.

Reimplemented from mrpt::utils::CSerializable.

size_t mrpt::poses::CPoses2DSequence::posesCount ( )

Returns the poses count in the sequence:


Member Data Documentation

Definition at line 49 of file CPoses2DSequence.h.

Definition at line 49 of file CPoses2DSequence.h.

Definition at line 49 of file CPoses2DSequence.h.

The internal sequence of poses, stored as relative, incremental poses, thus each one is situated just at the end point of last one, where the first one is referenced to (0,0,0deg)

Definition at line 105 of file CPoses2DSequence.h.




Page generated by Doxygen 1.7.3 for MRPT 0.9.4 SVN: at Sat Mar 26 06:40:17 UTC 2011