69 typedef std::map<mrpt::system::TTimeStamp, pose_t>
TPath;
105 m_path.erase(element_to_erase++);
106 return element_to_erase;
135 bool& out_valid_interp)
const;
139 bool& out_valid_interp)
const;
uint64_t TTimeStamp
A system independent time type, it holds the the number of 100-nanosecond intervals since January 1...
Base class for SE(2)/SE(3) interpolators.
const_reverse_iterator rbegin() const
const_iterator cend() const
Only specializations of this class are defined for each enum type of interest.
TPath m_path
The sequence of poses.
const_iterator begin() const
const Scalar * const_iterator
bool saveToTextFile(const std::string &s) const
Saves the points in the interpolator to a text file, with this format: Each row contains these elemen...
TInterpolatorMethod m_method
void setInterpolationMethod(TInterpolatorMethod method)
Change the method used to interpolate the robot path.
void filter(unsigned int component, unsigned int samples)
Filters by averaging one of the components of the pose data within the interpolator.
pose_t & interpolate(mrpt::system::TTimeStamp t, pose_t &out_interp, bool &out_valid_interp) const
Returns the pose at a given time, or interpolates using splines if there is not an exact match...
mrpt::poses::TInterpolatorMethod enum_t
const_reverse_iterator rend() const
void insert(mrpt::system::TTimeStamp t, const pose_t &p)
Inserts a new pose in the sequence.
iterator upper_bound(const mrpt::system::TTimeStamp &t)
iterator find(const mrpt::system::TTimeStamp &t)
A bidirectional version of std::map, declared as bimap<KEY,VALUE> and which actually contains two std...
const_iterator end() const
reverse_iterator rbegin()
void getBoundingBox(point_t &minCorner, point_t &maxCorner) const
Computes the bounding box in all Euclidean coordinates of the whole path.
bool loadFromTextFile(const std::string &s)
Loads from a text file, in the format described by saveToTextFile.
std::map< mrpt::system::TTimeStamp, pose_t > TPath
void setMaxTimeInterpolation(double time)
Set value of the maximum time to consider interpolation.
GLsizei const GLchar ** string
TInterpolatorMethod getInterpolationMethod() const
Returns the currently set interpolation method.
mrpt::poses::SE_traits< DIM >::lightweight_pose_t pose_t
TPose2D or TPose3D.
const_iterator upper_bound(const mrpt::system::TTimeStamp &t) const
std::pair< mrpt::system::TTimeStamp, pose_t > TTimePosePair
void impl_interpolation(const mrpt::math::CArrayDouble< 4 > &ts, const TTimePosePair p1, const TTimePosePair p2, const TTimePosePair p3, const TTimePosePair p4, const TInterpolatorMethod method, double td, pose_t &out_interp) const
iterator lower_bound(const mrpt::system::TTimeStamp &t)
TPath::const_reverse_iterator const_reverse_iterator
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
void clear()
Clears the current sequence of poses.
A helper class for SE(2) and SE(3) geometry-related transformations, on-manifold optimization Jacobia...
bool saveInterpolatedToTextFile(const std::string &s, double period) const
Saves the points in the interpolator to a text file, with the same format that saveToTextFile, but interpolating the path with the given period in seconds.
mrpt::poses::SE_traits< DIM >::point_t point_t
TPoint2D or TPoint3D.
double getMaxTimeInterpolation()
Set value of the maximum time to consider interpolation.
A partial specialization of CArrayNumeric for double numbers.
iterator erase(iterator element_to_erase)
TPath::const_iterator const_iterator
bool getPreviousPoseWithMinDistance(const mrpt::system::TTimeStamp &t, double distance, pose_t &out_pose)
Get the previous CPose3D in the map with a minimum defined distance.
mrpt::poses::SE_traits< DIM >::pose_t cpose_t
CPose2D or CPose3D.
void insert(const KEY &k, const VALUE &v)
Insert a new pair KEY<->VALUE in the bi-map.
CPoseInterpolatorBase()
Default ctor: empty sequence of poses.
const_iterator cbegin() const
double maxTimeInterpolation
Maximum time considered to interpolate.
const_iterator find(const mrpt::system::TTimeStamp &t) const
static void fill(bimap< enum_t, std::string > &m_map)
TPath::reverse_iterator reverse_iterator
TInterpolatorMethod
Type to select the interpolation method in CPoseInterpolatorBase derived classes. ...
double distance(const TPoint2D &p1, const TPoint2D &p2)
Gets the distance between two points in a 2D space.
const_iterator lower_bound(const mrpt::system::TTimeStamp &t) const