10 #ifndef opengl_CPlanarLaserScan_H
11 #define opengl_CPlanarLaserScan_H
26 class CPlanarLaserScan;
57 mrpt::obs::CObservation2DRangeScan m_scan;
58 mutable
mrpt::maps::CSimplePointsMap m_cache_points;
59 mutable
bool m_cache_valid;
63 float m_line_R,m_line_G,m_line_B,m_line_A;
66 float m_points_R,m_points_G,m_points_B,m_points_A;
68 float m_plane_R,m_plane_G,m_plane_B,m_plane_A;
72 bool m_enable_surface;
116 m_cache_valid =
false;
122 void render_dl()
const;
void setSurfaceColor(float R, float G, float B, float A=1.0f)
EIGEN_STRONG_INLINE void notifyChange() const
Must be called to notify that the object has changed (so, the display list must be updated) ...
void enableLine(bool enable=true)
Show or hides lines along all scanned points.
void setLineWidth(float w)
void setPointsWidth(float w)
A renderizable object suitable for rendering with OpenGL's display lists.
void enableSurface(bool enable=true)
Show or hides the scanned area as a 2D surface.
#define DEFINE_SERIALIZABLE_PRE_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)
This declaration must be inserted in all CSerializable classes definition, before the class declarati...
float getLineWidth() const
This object renders a 2D laser scan by means of three elements: the points, the line along end-points...
virtual ~CPlanarLaserScan()
Private, virtual destructor: only can be deleted from smart pointers.
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
#define DEFINE_SERIALIZABLE(class_name)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
A "CObservation"-derived class that represents a 2D range scan measurement (typically from a laser sc...
void setLineColor(float R, float G, float B, float A=1.0f)
void setPointsColor(float R, float G, float B, float A=1.0f)
#define DEFINE_SERIALIZABLE_POST_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)
void setScan(const mrpt::obs::CObservation2DRangeScan &scan)