9 #ifndef opengl_CTexturedPlane_H 10 #define opengl_CTexturedPlane_H 38 mutable std::vector<mrpt::math::TPolygonWithPlane>
tmpPoly;
39 void updatePoly()
const;
46 void setTextureCornerCoords(
float tex_x_min,
float tex_x_max,
float tex_y_min,
float tex_y_max)
48 m_tex_x_min=tex_x_min;
49 m_tex_x_max=tex_x_max;
50 m_tex_y_min=tex_y_min;
51 m_tex_y_max=tex_y_max;
58 m_xMin = xMin; m_xMax = xMax;
59 m_yMin = yMin; m_yMax = yMax;
60 polygonUpToDate=
false;
65 inline void getPlaneCorners(
float &xMin,
float &xMax,
float &yMin,
float &yMax)
const 67 xMin = m_xMin; xMax = m_xMax;
68 yMin = m_yMin; yMax = m_yMax;
72 static CTexturedPlanePtr Create(
float x_min,
float x_max,
float y_min,
float y_max);
A base class for all OpenGL objects with loadable textures.
#define MRPT_OVERRIDE
C++11 "override" for virtuals:
bool BASE_IMPEXP traceRay(const std::vector< TPolygonWithPlane > &vec, const mrpt::poses::CPose3D &pose, double &dist)
Fast ray tracing method using polygons' properties.
EIGEN_STRONG_INLINE void notifyChange() const
Must be called to notify that the object has changed (so, the display list must be updated) ...
A 2D plane in the XY plane with a texture image.
#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...
void setPlaneCorners(float xMin, float xMax, float yMin, float yMax)
Set the coordinates of the four corners that define the plane on the XY plane.
std::vector< mrpt::math::TPolygonWithPlane > tmpPoly
Used for ray-tracing.
void getPlaneCorners(float &xMin, float &xMax, float &yMin, float &yMax) const
Get the coordinates of the four corners that define the plane on the XY plane.
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 class used to store a 3D pose (a 3D translation + a rotation in 3D).
#define DEFINE_SERIALIZABLE_POST_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)