55 typedef typename mrpt::poses::SE_traits<DIM>::lightweight_pose_t
pose_t;
56 typedef typename mrpt::poses::SE_traits<DIM>::pose_t
cpose_t;
57 typedef typename mrpt::poses::SE_traits<DIM>::point_t
point_t;
60 typedef std::map<mrpt::system::TTimeStamp,pose_t>
TPath;
70 return m_path.cbegin();
72 return m_path.begin();
100 size_t size()
const {
return m_path.size(); }
101 bool empty()
const {
return m_path.empty(); }
126 void setMaxTimeInterpolation(
double time );
127 double getMaxTimeInterpolation();
148 bool saveInterpolatedToTextFile(
const std::string &
s,
double period)
const;
157 void getBoundingBox(
point_t &minCorner,
point_t &maxCorner)
const;
A partial specialization of CArrayNumeric for double numbers.
Base class for SE(2)/SE(3) interpolators.
const_iterator cbegin() const
mrpt::poses::SE_traits< DIM >::lightweight_pose_t pose_t
TPose2D or TPose3D.
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
const_iterator lower_bound(const mrpt::system::TTimeStamp &t) const
const_iterator begin() const
std::map< mrpt::system::TTimeStamp, pose_t > TPath
TPath::const_iterator const_iterator
iterator upper_bound(const mrpt::system::TTimeStamp &t)
const_iterator end() const
TPath::reverse_iterator reverse_iterator
const_iterator cend() const
iterator erase(iterator element_to_erase)
iterator find(const mrpt::system::TTimeStamp &t)
const_iterator find(const mrpt::system::TTimeStamp &t) const
TInterpolatorMethod m_method
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.
reverse_iterator rbegin()
const_reverse_iterator rend() const
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.
const_iterator upper_bound(const mrpt::system::TTimeStamp &t) const
std::pair< mrpt::system::TTimeStamp, pose_t > TTimePosePair
TPath m_path
The sequence of poses.
const_reverse_iterator rbegin() const
mrpt::poses::SE_traits< DIM >::point_t point_t
TPoint2D or TPoint3D.
iterator lower_bound(const mrpt::system::TTimeStamp &t)
TPath::const_reverse_iterator const_reverse_iterator
double maxTimeInterpolation
Maximum time considered to interpolate. If the difference between the desired timestamp where to inte...
A bidirectional version of std::map, declared as bimap<KEY,VALUE> and which actually contains two std...
void insert(const KEY &k, const VALUE &v)
Insert a new pair KEY<->VALUE in the bi-map.
void saveToTextFile(const std::string &file, mrpt::math::TMatrixTextFileFormat fileFormat=mrpt::math::MATRIX_FORMAT_ENG, bool appendMRPTHeader=false, const std::string &userHeader=std::string()) const
Save matrix to a text file, compatible with MATLAB text format (see also the methods of matrix classe...
const Scalar * const_iterator
void loadFromTextFile(const std::string &file)
Load matrix from a text file, compatible with MATLAB text format.
GLsizei const GLchar ** string
double BASE_IMPEXP distance(const TPoint2D &p1, const TPoint2D &p2)
Gets the distance between two points in a 2D space.
T interpolate(const T &x, const VECTOR &ys, const T &x0, const T &x1)
Interpolate a data sequence "ys" ranging from "x0" to "x1" (equally spaced), to obtain the approximat...
TInterpolatorMethod
Type to select the interpolation method in CPoseInterpolatorBase derived classes.
uint64_t TTimeStamp
A system independent time type, it holds the the number of 100-nanosecond intervals since January 1,...
void clear()
Clear the contents of this container.
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
static void fill(bimap< enum_t, std::string > &m_map)
mrpt::poses::TInterpolatorMethod enum_t
Only specializations of this class are defined for each enum type of interest.