class mrpt::poses::CPoses2DSequence
Overview
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
#include <mrpt/poses/CPoses2DSequence.h> class CPoses2DSequence: public mrpt::serialization::CSerializable { public: // methods size_t posesCount(); void getPose(unsigned int ind, CPose2D& outPose); void changePose(unsigned int ind, CPose2D& inPose); void appendPose(CPose2D& newPose); void clear(); CPose2D absolutePoseOf(unsigned int n); CPose2D absolutePoseAfterAll(); double computeTraveledDistanceAfter(size_t n); double computeTraveledDistanceAfterAll(); };
Methods
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”.
Parameters:
std::exception |
On 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”.
Parameters:
std::exception |
On invalid index value |
void appendPose(CPose2D& newPose)
Appends a new pose at the end of sequence.
Remember that poses are relative, incremental to the last one.
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.
Parameters:
std::exception |
On invalid index value |
See also:
CPose2D absolutePoseAfterAll()
A shortcut for “absolutePoseOf( posesCount() )”.
See also:
double computeTraveledDistanceAfter(size_t 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.
Parameters:
std::exception |
On invalid index value |
See also:
computeTraveledDistanceAfterAll
double computeTraveledDistanceAfterAll()
Returns the traveled distance after ALL movements.
A shortcut for “computeTraveledDistanceAfter( posesCount() )”.
See also: