MRPT
2.0.4
|
Virtual base class for Digital Elevation Model (DEM) maps.
See derived classes for details. This class implements those operations which are especific to DEMs.
Definition at line 22 of file CHeightGridMap2D_Base.h.
#include <mrpt/maps/CHeightGridMap2D_Base.h>
Classes | |
struct | TPointInsertParams |
Extra params for insertIndividualPoint() More... | |
Public Member Functions | |
CHeightGridMap2D_Base () | |
virtual | ~CHeightGridMap2D_Base () |
bool | dem_internal_insertObservation (const mrpt::obs::CObservation &obs, const mrpt::poses::CPose3D *robotPose=nullptr) |
Internal method called by internal_insertObservation() More... | |
Specific API for Digital Elevation Model (DEM) maps | |
bool | intersectLine3D (const mrpt::math::TLine3D &r1, mrpt::math::TObject3D &obj) const |
Gets the intersection between a 3D line and a Height Grid map (taking into account the different heights of each individual cell) More... | |
bool | getMinMaxHeight (float &z_min, float &z_max) const |
Computes the minimum and maximum height in the grid. More... | |
virtual bool | insertIndividualPoint (const double x, const double y, const double z, const TPointInsertParams ¶ms=TPointInsertParams())=0 |
Update the DEM with one new point. More... | |
virtual double | dem_get_resolution () const =0 |
virtual size_t | dem_get_size_x () const =0 |
virtual size_t | dem_get_size_y () const =0 |
virtual bool | dem_get_z_by_cell (const size_t cx, const size_t cy, double &z_out) const =0 |
Get cell 'z' by (cx,cy) cell indices. More... | |
virtual bool | dem_get_z (const double x, const double y, double &z_out) const =0 |
Get cell 'z' (x,y) by metric coordinates. More... | |
virtual void | dem_update_map ()=0 |
Ensure that all observations are reflected in the map estimate. More... | |
|
default |
|
virtualdefault |
|
pure virtual |
Implemented in mrpt::maps::CHeightGridMap2D, and mrpt::maps::CHeightGridMap2D_MRF.
|
pure virtual |
Implemented in mrpt::maps::CHeightGridMap2D, and mrpt::maps::CHeightGridMap2D_MRF.
|
pure virtual |
Implemented in mrpt::maps::CHeightGridMap2D, and mrpt::maps::CHeightGridMap2D_MRF.
|
pure virtual |
Get cell 'z' (x,y) by metric coordinates.
Implemented in mrpt::maps::CHeightGridMap2D, and mrpt::maps::CHeightGridMap2D_MRF.
|
pure virtual |
Get cell 'z' by (cx,cy) cell indices.
Implemented in mrpt::maps::CHeightGridMap2D, and mrpt::maps::CHeightGridMap2D_MRF.
bool CHeightGridMap2D_Base::dem_internal_insertObservation | ( | const mrpt::obs::CObservation & | obs, |
const mrpt::poses::CPose3D * | robotPose = nullptr |
||
) |
Internal method called by internal_insertObservation()
Definition at line 128 of file CHeightGridMap2D_Base.cpp.
References mrpt::maps::CPointsMap::changeCoordinatesReference(), mrpt::maps::CPointsMap::empty(), mrpt::maps::CPointsMap::getPoint(), IS_CLASS, mrpt::maps::CPointsMap::loadFromVelodyneScan(), MRPT_END, MRPT_START, mrpt::maps::CPointsMap::size(), and mrpt::maps::CHeightGridMap2D_Base::TPointInsertParams::update_map_after_insertion.
Referenced by mrpt::maps::CHeightGridMap2D::internal_insertObservation().
|
pure virtual |
Ensure that all observations are reflected in the map estimate.
Implemented in mrpt::maps::CHeightGridMap2D, and mrpt::maps::CHeightGridMap2D_MRF.
bool CHeightGridMap2D_Base::getMinMaxHeight | ( | float & | z_min, |
float & | z_max | ||
) | const |
Computes the minimum and maximum height in the grid.
Definition at line 28 of file CHeightGridMap2D_Base.cpp.
References mrpt::d2f().
Referenced by mrpt::maps::CHeightGridMap2D::getAs3DObject().
|
pure virtual |
Update the DEM with one new point.
Implemented in mrpt::maps::CHeightGridMap2D, and mrpt::maps::CHeightGridMap2D_MRF.
bool CHeightGridMap2D_Base::intersectLine3D | ( | const mrpt::math::TLine3D & | r1, |
mrpt::math::TObject3D & | obj | ||
) | const |
Gets the intersection between a 3D line and a Height Grid map (taking into account the different heights of each individual cell)
Definition at line 57 of file CHeightGridMap2D_Base.cpp.
References mrpt::math::TObject3D::getPoint(), mrpt::math::intersect(), MRPT_END, MRPT_START, mrpt::math::TPoint3D_< T >::norm(), mrpt::round(), mrpt::math::TPoint3D_data< T >::x, mrpt::math::TPoint3D_data< T >::y, and mrpt::math::TPoint3D_data< T >::z.
Page generated by Doxygen 1.8.14 for MRPT 2.0.4 Git: 33de1d0ad Sat Jun 20 11:02:42 2020 +0200 at sáb jun 20 17:35:17 CEST 2020 |