62 float lineWidth = 1.0);
127 float lineWidth = 1.0);
void setBoxCorners(const mrpt::math::TPoint3D &corner1, const mrpt::math::TPoint3D &corner2)
Set the position and size of the box, from two corners in 3D.
A solid or wireframe box in 3D, defined by 6 rectangular faces parallel to the planes X...
void setLineWidth(float width)
bool isBoxBorderEnabled() const
mrpt::math::TPoint3D m_corner_max
CBox()
Basic empty constructor.
void render_dl() const override
Render.
bool m_wireframe
true: wireframe, false: solid
bool m_draw_border
Draw line borders to solid box with the given linewidth (default: true)
EIGEN_STRONG_INLINE void notifyChange() const
Must be called to notify that the object has changed (so, the display list must be updated) ...
void setBoxBorderColor(const mrpt::img::TColor &c)
float m_lineWidth
For wireframe only.
A renderizable object suitable for rendering with OpenGL's display lists.
bool traceRay(const mrpt::poses::CPose3D &o, double &dist) const override
Ray tracing.
void getBoxCorners(mrpt::math::TPoint3D &corner1, mrpt::math::TPoint3D &corner2) const
void setWireframe(bool is_wireframe=true)
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...
void enableBoxBorder(bool drawBorder=true)
#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).
mrpt::math::TPoint3D m_corner_min
Corners coordinates.
mrpt::img::TColor m_solidborder_color
Color of the solid box borders.
The namespace for 3D scene representation and rendering.
virtual ~CBox()
Destructor.
float getLineWidth() const
mrpt::img::TColor getBoxBorderColor() const
static Ptr Create(Args &&... args)