9 #ifndef opengl_CTexturedPlane_H 10 #define opengl_CTexturedPlane_H 34 mutable std::vector<mrpt::math::TPolygonWithPlane>
tmpPoly;
43 float tex_x_min,
float tex_x_max,
float tex_y_min,
float tex_y_max)
67 float& xMin,
float& xMax,
float& yMin,
float& yMax)
const 77 float x_min,
float x_max,
float y_min,
float y_max);
88 float x_min = -1,
float x_max = 1,
float y_min = -1,
float y_max = 1);
static Ptr Create(Args &&... args)
A base class for all OpenGL objects with loadable textures.
std::shared_ptr< CTexturedPlane > Ptr
void setTextureCornerCoords(float tex_x_min, float tex_x_max, float tex_y_min, float tex_y_max)
Set the texture coordinates of the four corners (in the range 0-1).
virtual void getBoundingBox(mrpt::math::TPoint3D &bb_min, mrpt::math::TPoint3D &bb_max) const override
Evaluates the bounding box of this object (including possible children) in the coordinate frame of th...
virtual ~CTexturedPlane()
Private, virtual destructor: only can be deleted from smart pointers.
EIGEN_STRONG_INLINE void notifyChange() const
Must be called to notify that the object has changed (so, the display list must be updated) ...
virtual bool traceRay(const mrpt::poses::CPose3D &o, double &dist) const override
Simulation of ray-trace, given a pose.
A 2D plane in the XY plane with a texture image.
void render_texturedobj() const override
Must be implemented by derived classes.
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).
CTexturedPlane(float x_min=-1, float x_max=1, float y_min=-1, float y_max=1)
Constructor.