A flexible renderer of voxels, typically from a 3D octo map (see mrpt::maps::COctoMap).
This class is sort of equivalent to octovis::OcTreeDrawer from the octomap package, but relying on MRPT's CRenderizableDisplayList so there's no need to manually cache the rendering of OpenGL primitives.
Normally users call mrpt::maps::COctoMap::getAs3DObject() to obtain a generic mrpt::opengl::CSetOfObjects which insides holds an instance of COctoMapVoxels. You can also alternativelly call COctoMapVoxels::setFromOctoMap(), so you can tune the display parameters, colors, etc. As with any other mrpt::opengl class, all object coordinates refer to some frame of reference which is relative to the object parent and can be changed with mrpt::opengl::CRenderizable::setPose()
This class draws these separate elements to represent an OctoMap:
Several coloring schemes can be selected with setVisualizationMode(). See COctoMapVoxels::visualization_mode_t
Definition at line 59 of file COctoMapVoxels.h.
#include <mrpt/opengl/COctoMapVoxels.h>
Classes | |
struct | TGridCube |
The info of each grid block. More... | |
struct | TInfoPerVoxelSet |
struct | TVoxel |
The info of each of the voxels. More... | |
Public Types | |
enum | visualization_mode_t { COLOR_FROM_HEIGHT, COLOR_FROM_OCCUPANCY, TRANSPARENCY_FROM_OCCUPANCY, TRANS_AND_COLOR_FROM_OCCUPANCY, MIXED, FIXED } |
The different coloring schemes, which modulate the generic mrpt::opengl::CRenderizable object color. More... | |
Public Member Functions | |
void * | operator new (size_t size) |
void * | operator new[] (size_t size) |
void | operator delete (void *ptr) throw () |
void | operator delete[] (void *ptr) throw () |
void | operator delete (void *memory, void *ptr) throw () |
void * | operator new (size_t size, const std::nothrow_t &) throw () |
void | operator delete (void *ptr, const std::nothrow_t &) throw () |
void | clear () |
Clears everything. More... | |
void | setVisualizationMode (visualization_mode_t mode) |
Select the visualization mode. More... | |
visualization_mode_t | getVisualizationMode () const |
void | enableLights (bool enable) |
Can be used to enable/disable the effects of lighting in this object. More... | |
bool | areLightsEnabled () const |
void | enableCubeTransparency (bool enable) |
By default, the alpha (transparency) component of voxel cubes is taken into account, but transparency can be disabled with this method. More... | |
bool | isCubeTransparencyEnabled () const |
void | showGridLines (bool show) |
Shows/hides the grid lines. More... | |
bool | areGridLinesVisible () const |
void | showVoxels (unsigned int voxel_set, bool show) |
Shows/hides the voxels (voxel_set is a 0-based index for the set of voxels to modify, e.g. More... | |
bool | areVoxelsVisible (unsigned int voxel_set) const |
void | showVoxelsAsPoints (const bool enable) |
For quick renders: render voxels as points instead of cubes. More... | |
bool | areVoxelsShownAsPoints () const |
void | setVoxelAsPointsSize (float pointSize) |
Only used when showVoxelsAsPoints() is enabled. More... | |
float | getVoxelAsPointsSize () const |
void | setGridLinesWidth (float w) |
Sets the width of grid lines. More... | |
float | getGridLinesWidth () const |
Gets the width of grid lines. More... | |
void | setGridLinesColor (const mrpt::utils::TColor &color) |
const mrpt::utils::TColor & | getGridLinesColor () const |
size_t | getGridCubeCount () const |
Returns the total count of grid cubes. More... | |
size_t | getVoxelSetCount () const |
Returns the number of voxel sets. More... | |
size_t | getVoxelCount (const size_t set_index) const |
Returns the total count of voxels in one voxel set. More... | |
void | setBoundingBox (const mrpt::math::TPoint3D &bb_min, const mrpt::math::TPoint3D &bb_max) |
Manually changes the bounding box (normally the user doesn't need to call this) More... | |
void | resizeGridCubes (const size_t nCubes) |
void | resizeVoxelSets (const size_t nVoxelSets) |
void | resizeVoxels (const size_t set_index, const size_t nVoxels) |
void | reserveGridCubes (const size_t nCubes) |
void | reserveVoxels (const size_t set_index, const size_t nVoxels) |
TGridCube & | getGridCubeRef (const size_t idx) |
const TGridCube & | getGridCube (const size_t idx) const |
TVoxel & | getVoxelRef (const size_t set_index, const size_t idx) |
const TVoxel & | getVoxel (const size_t set_index, const size_t idx) const |
void | push_back_GridCube (const TGridCube &c) |
void | push_back_Voxel (const size_t set_index, const TVoxel &v) |
void | sort_voxels_by_z () |
void | render_dl () const MRPT_OVERRIDE |
Render. More... | |
void | getBoundingBox (mrpt::math::TPoint3D &bb_min, mrpt::math::TPoint3D &bb_max) const MRPT_OVERRIDE |
Evaluates the bounding box of this object (including possible children) in the coordinate frame of the object parent. More... | |
template<class OCTOMAP > | |
void | setFromOctoMap (OCTOMAP &m) |
Sets the contents of the object from a mrpt::maps::COctoMap object. More... | |
CRenderizableDisplayList * | clone () const |
Interface for the stlplus smart pointer class. More... | |
void | render () const MRPT_OVERRIDE |
Render the object, regenerating the display list if needed, otherwise just calling it. More... | |
virtual bool | traceRay (const mrpt::poses::CPose3D &o, double &dist) const |
Simulation of ray-trace, given a pose. More... | |
virtual mxArray * | writeToMatlab () const |
Introduces a pure virtual method responsible for writing to a mxArray Matlab object, typically a MATLAB struct whose contents are documented in each derived class. More... | |
mrpt::utils::CObjectPtr | duplicateGetSmartPtr () const |
Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer). More... | |
Static Public Member Functions | |
static void * | operator new (size_t size, void *ptr) |
static void | renderTextBitmap (const char *str, void *fontStyle) |
This method is safe for calling from within ::render() methods. More... | |
static void | renderTextBitmap (int screen_x, int screen_y, const std::string &str, float color_r=1, float color_g=1, float color_b=1, mrpt::opengl::TOpenGLFont font=mrpt::opengl::MRPT_GLUT_BITMAP_TIMES_ROMAN_24) |
Render a text message in the current rendering context, creating a glViewport in the way (do not call within ::render() methods) More... | |
static int | textBitmapWidth (const std::string &str, mrpt::opengl::TOpenGLFont font=mrpt::opengl::MRPT_GLUT_BITMAP_TIMES_ROMAN_24) |
Return the exact width in pixels for a given string, as will be rendered by renderTextBitmap(). More... | |
Static Public Attributes | |
static const mrpt::utils::TRuntimeClassId | classCObject |
Protected Member Functions | |
void | writeToStreamRender (utils::CStream &out) const |
CSerializable virtual methods | |
void | writeToStream (mrpt::utils::CStream &out, int *getVersion) const MRPT_OVERRIDE |
Introduces a pure virtual method responsible for writing to a CStream. More... | |
void | readFromStream (mrpt::utils::CStream &in, int version) MRPT_OVERRIDE |
Introduces a pure virtual method responsible for loading from a CStream This can not be used directly be users, instead use "stream >> object;" for reading it from a stream or "stream >> object_ptr;" if the class is unknown apriori. More... | |
Static Protected Member Functions | |
static void | checkOpenGLError () |
Checks glGetError and throws an exception if an error situation is found. More... | |
static unsigned int | getNewTextureNumber () |
Returns the lowest next free texture name (avoid using OpenGL's own function since we may call them from different threads and seem it's not cool). More... | |
static void | releaseTextureName (unsigned int i) |
Protected Attributes | |
std::deque< TInfoPerVoxelSet > | m_voxel_sets |
std::vector< TGridCube > | m_grid_cubes |
mrpt::math::TPoint3D | m_bb_min |
mrpt::math::TPoint3D | m_bb_max |
Cached bounding boxes. More... | |
bool | m_enable_lighting |
bool | m_enable_cube_transparency |
bool | m_showVoxelsAsPoints |
float | m_showVoxelsAsPointsSize |
bool | m_show_grids |
float | m_grid_width |
mrpt::utils::TColor | m_grid_color |
visualization_mode_t | m_visual_mode |
std::string | m_name |
bool | m_show_name |
mrpt::utils::TColor | m_color |
Color components in the range [0,255]. More... | |
mrpt::poses::CPose3D | m_pose |
6D pose wrt the parent coordinate reference. This class automatically holds the cached 3x3 rotation matrix for quick load into opengl stack. More... | |
float | m_scale_x |
float | m_scale_y |
float | m_scale_z |
Scale components to apply to the object (default=1) More... | |
bool | m_visible |
Is the object visible? (default=true) More... | |
Private Member Functions | |
COctoMapVoxels () | |
Constructor. More... | |
virtual | ~COctoMapVoxels () |
Private, virtual destructor: only can be deleted from smart pointers. More... | |
Private Attributes | |
unsigned int | m_dl |
Display list ID, for derived classes that want to use it (it's automatically deleted and freed on destruction of this base class). More... | |
bool | m_dl_recreate |
If using display lists, this is true when the list must be updated (the object changes, it's the first rendering, etc...). More... | |
RTTI stuff | |
typedef COctoMapVoxelsPtr | SmartPtr |
static mrpt::utils::CLASSINIT | _init_COctoMapVoxels |
static mrpt::utils::TRuntimeClassId | classCOctoMapVoxels |
static const mrpt::utils::TRuntimeClassId * | classinfo |
static const mrpt::utils::TRuntimeClassId * | _GetBaseClass () |
virtual const mrpt::utils::TRuntimeClassId * | GetRuntimeClass () const |
Returns information about the class of an object in runtime. More... | |
virtual mrpt::utils::CObject * | duplicate () const MRPT_OVERRIDE |
Returns a copy of the object, indepently of its class. More... | |
static mrpt::utils::CObject * | CreateObject () |
static COctoMapVoxelsPtr | Create () |
typedef COctoMapVoxelsPtr mrpt::opengl::COctoMapVoxels::SmartPtr |
A typedef for the associated smart pointer
Definition at line 61 of file COctoMapVoxels.h.
The different coloring schemes, which modulate the generic mrpt::opengl::CRenderizable object color.
Set with setVisualizationMode()
Definition at line 65 of file COctoMapVoxels.h.
|
private |
Constructor.
|
inlineprivatevirtual |
Private, virtual destructor: only can be deleted from smart pointers.
Definition at line 212 of file COctoMapVoxels.h.
|
staticprotected |
|
inline |
Definition at line 142 of file COctoMapVoxels.h.
|
inline |
Definition at line 132 of file COctoMapVoxels.h.
|
inline |
Definition at line 150 of file COctoMapVoxels.h.
|
inline |
Definition at line 146 of file COctoMapVoxels.h.
References ASSERT_.
|
staticprotectedinherited |
Checks glGetError and throws an exception if an error situation is found.
void mrpt::opengl::COctoMapVoxels::clear | ( | ) |
Clears everything.
|
inlineinherited |
Interface for the stlplus smart pointer class.
Definition at line 71 of file CRenderizableDisplayList.h.
|
static |
|
static |
|
virtual |
Returns a copy of the object, indepently of its class.
Implements mrpt::utils::CObject.
|
inlineinherited |
|
inline |
By default, the alpha (transparency) component of voxel cubes is taken into account, but transparency can be disabled with this method.
Definition at line 137 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Can be used to enable/disable the effects of lighting in this object.
Definition at line 131 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
virtual |
Evaluates the bounding box of this object (including possible children) in the coordinate frame of the object parent.
Implements mrpt::opengl::CRenderizable.
|
inline |
Definition at line 182 of file COctoMapVoxels.h.
References ASSERTDEB_.
|
inline |
Returns the total count of grid cubes.
Definition at line 165 of file COctoMapVoxels.h.
|
inline |
Definition at line 181 of file COctoMapVoxels.h.
References ASSERTDEB_, and mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Definition at line 162 of file COctoMapVoxels.h.
|
inline |
Gets the width of grid lines.
Definition at line 159 of file COctoMapVoxels.h.
|
staticprotectedinherited |
Returns the lowest next free texture name (avoid using OpenGL's own function since we may call them from different threads and seem it's not cool).
|
inherited |
Returns the 3D pose of the object as TPose3D.
|
inlineinherited |
Returns a const ref to the 3D pose of the object as mrpt::poses::CPose3D (which explicitly contains the 3x3 rotation matrix)
Definition at line 79 of file CRenderizable.h.
|
virtual |
Returns information about the class of an object in runtime.
Reimplemented from mrpt::opengl::CRenderizableDisplayList.
|
inline |
Definition at line 128 of file COctoMapVoxels.h.
|
inline |
Definition at line 185 of file COctoMapVoxels.h.
References ASSERTDEB_, and mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Definition at line 154 of file COctoMapVoxels.h.
|
inline |
Returns the total count of voxels in one voxel set.
Definition at line 169 of file COctoMapVoxels.h.
References ASSERT_.
|
inline |
Definition at line 184 of file COctoMapVoxels.h.
References ASSERTDEB_, and mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Returns the number of voxel sets.
Definition at line 167 of file COctoMapVoxels.h.
|
inline |
Definition at line 138 of file COctoMapVoxels.h.
|
inlineinherited |
|
inlineprotectedinherited |
Must be called to notify that the object has changed (so, the display list must be updated)
Definition at line 49 of file CRenderizableDisplayList.h.
Referenced by mrpt::opengl::CGeneralizedCylinder::addVisibleSectionAtEnd(), mrpt::opengl::CGeneralizedCylinder::addVisibleSectionAtStart(), mrpt::opengl::CMeshFast::adjustGridToImageAR(), mrpt::opengl::CMesh::adjustGridToImageAR(), mrpt::opengl::CSetOfLines::appendLine(), mrpt::opengl::CSetOfLines::appendLines(), mrpt::opengl::CSetOfLines::begin(), mrpt::opengl::CSetOfLines::clear(), mrpt::opengl::CVectorField2D::clear(), mrpt::opengl::CVectorField3D::clear(), mrpt::opengl::CSetOfTexturedTriangles::clearTriangles(), mrpt::opengl::CSetOfTriangles::clearTriangles(), mrpt::opengl::COpenGLStandardObject::enable(), mrpt::opengl::CSimpleLine::enableAntiAliasing(), mrpt::opengl::CGridPlaneXY::enableAntiAliasing(), mrpt::opengl::CGridPlaneXZ::enableAntiAliasing(), mrpt::opengl::CMesh3D::enableAntiAliasing(), mrpt::opengl::CVectorField2D::enableAntiAliasing(), mrpt::opengl::CSetOfLines::enableAntiAliasing(), mrpt::opengl::CVectorField3D::enableAntiAliasing(), mrpt::opengl::CBox::enableBoxBorder(), mrpt::opengl::CVectorField3D::enableColorFromModule(), mrpt::opengl::CMesh::enableColorFromZ(), mrpt::opengl::CMeshFast::enableColorFromZ(), enableCubeTransparency(), mrpt::opengl::C3DSScene::enableExtraAmbientLight(), mrpt::opengl::CMesh3D::enableFaceNormals(), enableLights(), mrpt::opengl::CPlanarLaserScan::enableLine(), mrpt::opengl::CPlanarLaserScan::enablePoints(), mrpt::opengl::CSphere::enableRadiusIndependentOfEyeDistance(), mrpt::opengl::CMesh3D::enableShowEdges(), mrpt::opengl::CMesh3D::enableShowFaces(), mrpt::opengl::CVectorField3D::enableShowPoints(), mrpt::opengl::CMesh3D::enableShowVertices(), mrpt::opengl::CPlanarLaserScan::enableSurface(), mrpt::opengl::CAxis::enableTickMarks(), mrpt::opengl::CMesh3D::enableTransparency(), mrpt::opengl::CMesh::enableTransparency(), mrpt::opengl::CMeshFast::enableTransparency(), mrpt::opengl::CSetOfTriangles::enableTransparency(), mrpt::opengl::CAngularObservationMesh::enableTransparency(), mrpt::opengl::CMesh::enableWireFrame(), mrpt::opengl::CSetOfLines::end(), getGridCubeRef(), mrpt::opengl::CSetOfTexturedTriangles::getTriangle(), getVoxel(), getVoxelRef(), mrpt::opengl::CSetOfTexturedTriangles::insertTriangle(), mrpt::opengl::CSetOfTriangles::insertTriangle(), mrpt::opengl::CSetOfTriangles::insertTriangles(), push_back_GridCube(), push_back_Voxel(), mrpt::opengl::CSetOfTriangles::reserve(), mrpt::opengl::CSetOfLines::reserve(), reserveVoxels(), mrpt::opengl::CSetOfLines::resize(), mrpt::opengl::CVectorField2D::resize(), mrpt::opengl::CVectorField3D::resize(), resizeGridCubes(), resizeVoxels(), resizeVoxelSets(), mrpt::opengl::CGeneralizedCylinder::setAllSectionsInvisible(), mrpt::opengl::CGeneralizedCylinder::setAllSectionsVisible(), mrpt::opengl::CArrow::setArrowEnds(), mrpt::opengl::CArrow::setArrowYawPitchRoll(), mrpt::opengl::CGeneralizedCylinder::setAxis(), mrpt::opengl::CAxis::setAxisLimits(), mrpt::opengl::CBox::setBoxBorderColor(), mrpt::opengl::CGeneralizedCylinder::setClosed(), mrpt::opengl::CGeneralizedEllipsoidTemplate< 3 >::setCovMatrixAndMean(), mrpt::opengl::CDisk::setDiskRadius(), mrpt::opengl::COpenGLStandardObject::setFlags(), mrpt::opengl::CText3D::setFont(), mrpt::opengl::CGeneralizedCylinder::setGeneratrix(), mrpt::opengl::CVectorField2D::setGridCenterAndCellSize(), mrpt::opengl::CGridPlaneXY::setGridFrequency(), mrpt::opengl::CGridPlaneXZ::setGridFrequency(), mrpt::opengl::CMesh::setGridLimits(), mrpt::opengl::CMeshFast::setGridLimits(), mrpt::opengl::CVectorField2D::setGridLimits(), setGridLinesColor(), setGridLinesWidth(), mrpt::opengl::CCylinder::setHasBases(), mrpt::opengl::CArrow::setHeadRatio(), mrpt::opengl::CCylinder::setHeight(), mrpt::opengl::CArrow::setLargeRadius(), mrpt::opengl::CSetOfLines::setLineByIndex(), mrpt::opengl::CSimpleLine::setLineCoords(), mrpt::opengl::CSimpleLine::setLineWidth(), mrpt::opengl::CGridPlaneXZ::setLineWidth(), mrpt::opengl::CGridPlaneXY::setLineWidth(), mrpt::opengl::CSetOfLines::setLineWidth(), mrpt::opengl::CAxis::setLineWidth(), mrpt::opengl::CFrustum::setLineWidth(), mrpt::opengl::CBox::setLineWidth(), mrpt::opengl::CVectorField2D::setLineWidth(), mrpt::opengl::CGeneralizedEllipsoidTemplate< 3 >::setLineWidth(), mrpt::opengl::CVectorField3D::setLineWidth(), mrpt::opengl::CPolyhedron::setLineWidth(), mrpt::opengl::CVectorField3D::setMaxSpeedForColor(), mrpt::opengl::CVectorField3D::setMotionFieldColormap(), mrpt::opengl::COpenGLStandardObject::setNormal(), mrpt::opengl::CSphere::setNumberDivsLatitude(), mrpt::opengl::CSphere::setNumberDivsLongitude(), mrpt::opengl::CGeneralizedEllipsoidTemplate< 3 >::setNumberOfSegments(), mrpt::opengl::CFrustum::setPlaneColor(), mrpt::opengl::CTexturedPlane::setPlaneCorners(), mrpt::opengl::CGridPlaneXY::setPlaneLimits(), mrpt::opengl::CGridPlaneXZ::setPlaneLimits(), mrpt::opengl::CGridPlaneXZ::setPlaneYcoord(), mrpt::opengl::CGridPlaneXY::setPlaneZcoord(), mrpt::opengl::CVectorField2D::setPointColor(), mrpt::opengl::CVectorField3D::setPointColor(), mrpt::opengl::CVectorField3D::setPointCoordinates(), mrpt::opengl::CVectorField2D::setPointSize(), mrpt::opengl::CVectorField3D::setPointSize(), mrpt::opengl::CGeneralizedEllipsoidTemplate< 3 >::setQuantiles(), mrpt::opengl::CCylinder::setRadii(), mrpt::opengl::CSphere::setRadius(), mrpt::opengl::CCylinder::setRadius(), mrpt::opengl::CPlanarLaserScan::setScan(), mrpt::opengl::CCylinder::setSlicesCount(), mrpt::opengl::CArrow::setSmallRadius(), mrpt::opengl::CCylinder::setStacksCount(), mrpt::opengl::CText3D::setString(), mrpt::opengl::CText3D::setTextKerning(), mrpt::opengl::CText3D::setTextSpacing(), mrpt::opengl::CText3D::setTextStyle(), mrpt::opengl::CTexturedPlane::setTextureCornerCoords(), mrpt::opengl::CVectorField2D::setVectorField(), mrpt::opengl::CVectorField3D::setVectorField(), mrpt::opengl::CVectorField2D::setVectorFieldColor(), mrpt::opengl::CVectorField3D::setVectorFieldColor(), mrpt::opengl::CGeneralizedCylinder::setVisibleSections(), setVisualizationMode(), setVoxelAsPointsSize(), mrpt::opengl::CBox::setWireframe(), mrpt::opengl::CAngularObservationMesh::setWireframe(), mrpt::opengl::CPolyhedron::setWireframe(), mrpt::opengl::CMeshFast::setXBounds(), mrpt::opengl::CMesh::setXBounds(), mrpt::opengl::CMeshFast::setXMax(), mrpt::opengl::CMesh::setXMax(), mrpt::opengl::CMeshFast::setXMin(), mrpt::opengl::CMesh::setXMin(), mrpt::opengl::CMeshFast::setYBounds(), mrpt::opengl::CMesh::setYBounds(), mrpt::opengl::CMeshFast::setYMax(), mrpt::opengl::CMesh::setYMax(), mrpt::opengl::CMeshFast::setYMin(), mrpt::opengl::CMesh::setYMin(), showGridLines(), showVoxels(), showVoxelsAsPoints(), and mrpt::opengl::CGeneralizedEllipsoidTemplate< 3 >::thisclass_readFromStream().
|
inline |
Definition at line 61 of file COctoMapVoxels.h.
|
inline |
Definition at line 61 of file COctoMapVoxels.h.
|
inline |
Definition at line 61 of file COctoMapVoxels.h.
|
inline |
Definition at line 61 of file COctoMapVoxels.h.
|
inline |
Definition at line 61 of file COctoMapVoxels.h.
|
inline |
Definition at line 61 of file COctoMapVoxels.h.
|
inlinestatic |
Definition at line 61 of file COctoMapVoxels.h.
|
inline |
Definition at line 61 of file COctoMapVoxels.h.
|
inline |
Definition at line 187 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Definition at line 188 of file COctoMapVoxels.h.
References ASSERTDEB_, and mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
protectedvirtual |
Introduces a pure virtual method responsible for loading from a CStream This can not be used directly be users, instead use "stream >> object;" for reading it from a stream or "stream >> object_ptr;" if the class is unknown apriori.
in | The input binary stream where the object data must read from. |
version | The version of the object stored in the stream: use this version number in your code to know how to read the incoming data. |
std::exception | On any error, see CStream::ReadBuffer |
Implements mrpt::utils::CSerializable.
|
inlineprotectedinherited |
Definition at line 58 of file CRenderizableDisplayList.h.
References mrpt::opengl::CRenderizable::readFromStreamRender().
|
staticprotectedinherited |
|
virtualinherited |
Render the object, regenerating the display list if needed, otherwise just calling it.
Implements mrpt::opengl::CRenderizable.
|
virtual |
Render.
Implements mrpt::opengl::CRenderizableDisplayList.
|
staticinherited |
This method is safe for calling from within ::render() methods.
|
staticinherited |
Render a text message in the current rendering context, creating a glViewport in the way (do not call within ::render() methods)
|
inline |
Definition at line 178 of file COctoMapVoxels.h.
|
inline |
Definition at line 179 of file COctoMapVoxels.h.
References ASSERT_, and mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Definition at line 174 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Definition at line 176 of file COctoMapVoxels.h.
References ASSERT_, and mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Definition at line 175 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
void mrpt::opengl::COctoMapVoxels::setBoundingBox | ( | const mrpt::math::TPoint3D & | bb_min, |
const mrpt::math::TPoint3D & | bb_max | ||
) |
Manually changes the bounding box (normally the user doesn't need to call this)
|
inlineinherited |
c | Changes the default object color |
Definition at line 125 of file CRenderizable.h.
References mrpt::utils::TColorf::A, mrpt::utils::TColorf::B, mrpt::utils::TColorf::G, and mrpt::utils::TColorf::R.
|
inlineinherited |
Set the color components of this object (R,G,B,Alpha, in the range 0-1)
Definition at line 131 of file CRenderizable.h.
|
virtualinherited |
Reimplemented in mrpt::opengl::CSetOfTriangles, and mrpt::opengl::CSetOfObjects.
|
inlineinherited |
Set the color components of this object (R,G,B,Alpha, in the range 0-1)
Definition at line 138 of file CRenderizable.h.
References mrpt::opengl::CRenderizable::setColor_u8().
Referenced by mrpt::opengl::CRenderizable::setColor_u8().
|
inline |
Sets the contents of the object from a mrpt::maps::COctoMap object.
Typically,an | mrpt::maps::COctoMap object |
Definition at line 204 of file COctoMapVoxels.h.
|
inline |
Definition at line 161 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Sets the width of grid lines.
Definition at line 157 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inlineinherited |
Changes the location of the object, keeping untouched the orientation.
Definition at line 85 of file CRenderizable.h.
References mrpt::math::TPoint3D::x, mrpt::math::TPoint3D::y, and mrpt::math::TPoint3D::z.
|
inlineinherited |
Changes the location of the object, keeping untouched the orientation.
Definition at line 82 of file CRenderizable.h.
|
inherited |
Set the 3D pose from a mrpt::math::TPose3D object (return a ref to this)
|
inherited |
Set the 3D pose from a mrpt::poses::CPose3D object (return a ref to this)
|
inherited |
Set the 3D pose from a mrpt::poses::CPose3D object (return a ref to this)
|
inherited |
Set the 3D pose from a mrpt::poses::CPose3D object (return a ref to this)
|
inlineinherited |
Set object visibility (default=true)
Definition at line 67 of file CRenderizable.h.
|
inline |
Select the visualization mode.
To have any effect, this method has to be called before loading the octomap.
Definition at line 125 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Only used when showVoxelsAsPoints() is enabled.
Definition at line 153 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inlineprotectedvirtualinherited |
Optional: If the object has some state in which creating a display list is NOT preferred over direct rendering, implement this method and return "true" in those cases.
Reimplemented in mrpt::opengl::CSphere.
Definition at line 56 of file CRenderizableDisplayList.h.
|
inline |
Shows/hides the grid lines.
Definition at line 141 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
Shows/hides the voxels (voxel_set is a 0-based index for the set of voxels to modify, e.g.
VOXEL_SET_OCCUPIED, VOXEL_SET_FREESPACE)
Definition at line 145 of file COctoMapVoxels.h.
References ASSERT_, and mrpt::opengl::CRenderizableDisplayList::notifyChange().
|
inline |
For quick renders: render voxels as points instead of cubes.
Definition at line 149 of file COctoMapVoxels.h.
References mrpt::opengl::CRenderizableDisplayList::notifyChange().
void mrpt::opengl::COctoMapVoxels::sort_voxels_by_z | ( | ) |
|
staticinherited |
Return the exact width in pixels for a given string, as will be rendered by renderTextBitmap().
|
virtualinherited |
Simulation of ray-trace, given a pose.
Returns true if the ray effectively collisions with the object (returning the distance to the origin of the ray in "dist"), or false in other case. "dist" variable yields undefined behaviour when false is returned
Reimplemented in mrpt::opengl::CPolyhedron, mrpt::opengl::CAngularObservationMesh, mrpt::opengl::CGeneralizedEllipsoidTemplate< DIM >, mrpt::opengl::CGeneralizedEllipsoidTemplate< 2 >, mrpt::opengl::CGeneralizedEllipsoidTemplate< 3 >, mrpt::opengl::CMesh, mrpt::opengl::CGeneralizedCylinder, mrpt::opengl::CSetOfTriangles, mrpt::opengl::CSetOfObjects, mrpt::opengl::CEllipsoid, mrpt::opengl::CFrustum, mrpt::opengl::CTexturedPlane, mrpt::opengl::CSetOfTexturedTriangles, mrpt::opengl::CSphere, mrpt::opengl::CAssimpModel, mrpt::opengl::C3DSScene, mrpt::opengl::CBox, mrpt::opengl::CDisk, mrpt::opengl::CCylinder, and mrpt::opengl::COpenGLStandardObject.
|
inlinevirtualinherited |
Introduces a pure virtual method responsible for writing to a mxArray
Matlab object, typically a MATLAB struct
whose contents are documented in each derived class.
mxArray
(caller is responsible of memory freeing) or NULL is class does not support conversion to MATLAB. Definition at line 79 of file CSerializable.h.
|
protectedvirtual |
Introduces a pure virtual method responsible for writing to a CStream.
This can not be used directly be users, instead use "stream << object;" for writing it to a stream.
out | The output binary stream where object must be dumped. |
getVersion | If NULL, the object must be dumped. If not, only the version of the object dump must be returned in this pointer. This enables the versioning of objects dumping and backward compatibility with previously stored data. |
std::exception | On any error, see CStream::WriteBuffer |
Implements mrpt::utils::CSerializable.
|
protectedinherited |
|
staticprotected |
Definition at line 61 of file COctoMapVoxels.h.
|
staticinherited |
|
static |
Definition at line 61 of file COctoMapVoxels.h.
|
staticinherited |
Definition at line 46 of file CRenderizable.h.
|
staticinherited |
Definition at line 38 of file CRenderizableDisplayList.h.
|
staticinherited |
Definition at line 42 of file CSerializable.h.
|
static |
Definition at line 61 of file COctoMapVoxels.h.
|
protected |
Cached bounding boxes.
Definition at line 108 of file COctoMapVoxels.h.
|
protected |
Definition at line 108 of file COctoMapVoxels.h.
|
protectedinherited |
Color components in the range [0,255].
Definition at line 54 of file CRenderizable.h.
|
mutableprivateinherited |
Display list ID, for derived classes that want to use it (it's automatically deleted and freed on destruction of this base class).
Definition at line 41 of file CRenderizableDisplayList.h.
|
mutableprivateinherited |
If using display lists, this is true when the list must be updated (the object changes, it's the first rendering, etc...).
Definition at line 42 of file CRenderizableDisplayList.h.
|
protected |
Definition at line 111 of file COctoMapVoxels.h.
|
protected |
Definition at line 110 of file COctoMapVoxels.h.
|
protected |
Definition at line 116 of file COctoMapVoxels.h.
|
protected |
Definition at line 106 of file COctoMapVoxels.h.
|
protected |
Definition at line 115 of file COctoMapVoxels.h.
|
protectedinherited |
Definition at line 52 of file CRenderizable.h.
|
protectedinherited |
6D pose wrt the parent coordinate reference. This class automatically holds the cached 3x3 rotation matrix for quick load into opengl stack.
Definition at line 55 of file CRenderizable.h.
Referenced by mrpt::opengl::CGeneralizedEllipsoidTemplate< 3 >::render_dl().
|
protectedinherited |
Definition at line 56 of file CRenderizable.h.
|
protectedinherited |
Definition at line 56 of file CRenderizable.h.
|
protectedinherited |
Scale components to apply to the object (default=1)
Definition at line 56 of file CRenderizable.h.
|
protected |
Definition at line 114 of file COctoMapVoxels.h.
|
protectedinherited |
Definition at line 53 of file CRenderizable.h.
|
protected |
Definition at line 112 of file COctoMapVoxels.h.
|
protected |
Definition at line 113 of file COctoMapVoxels.h.
|
protectedinherited |
Is the object visible? (default=true)
Definition at line 57 of file CRenderizable.h.
|
protected |
Definition at line 117 of file COctoMapVoxels.h.
|
protected |
Definition at line 105 of file COctoMapVoxels.h.
Page generated by Doxygen 1.8.17 for MRPT 1.4.0 SVN: at Tue Mar 3 09:15:16 UTC 2020 |