[mrpt-opengl]

Overview

Visualization helpers for 3D rendering of all kind of primitives

Library mrpt-opengl

This library is part of MRPT and can be installed in Debian-based systems with:

sudo apt install libmrpt-opengl-dev

Read also how to import MRPT into your CMake scripts.

This library includes several data classes that represent objects that can be inserted into a 3D scene, which can be then rendered or streamed to disk or whatever.

A good starting point to explore this library is the base class for all the 3D objects: mrpt::opengl::CRenderizable

A 3D scene is represented by an object of the type mrpt::opengl::Scene, which in turn can contain one or several “viewports” in such a way that the rendering area is divided into several spaces, each displaying the same or different objects. See the tutorial: Tutorial: 3D scenes

See the full list of classes in mrpt::opengl.

Next follows a list with the preview of most rendering primitive classes:

  • mrpt::opengl::CArrow:

    _static/preview_CArrow.png
  • mrpt::opengl::CAssimpModel:

    _static/preview_CAssimpModel.png
  • mrpt::opengl::CAxis:

    _static/preview_CAxis.png
  • mrpt::opengl::CBox:

    _static/preview_CBox.png
  • mrpt::opengl::CFrustum:

    _static/preview_CFrustum.png
  • mrpt::opengl::CCylinder:

    _static/preview_CCylinder.png
  • mrpt::opengl::CDisk:

    _static/preview_CDisk.png
  • mrpt::opengl::CEllipsoid3D:

    _static/preview_CEllipsoid.png
  • mrpt::opengl::CGridPlaneXY:

    _static/preview_CGridPlaneXY.png
  • mrpt::opengl::CGridPlaneXZ:

    _static/preview_CGridPlaneXZ.png
  • mrpt::opengl::CMesh:

    _static/preview_CMesh.png
  • mrpt::opengl::CMesh3D:

    _static/preview_CMesh3D.png
  • mrpt::opengl::CMeshFast:

    _static/preview_CMeshFast.png
  • mrpt::opengl::CPointCloud:

    _static/preview_CPointCloud.png
  • mrpt::opengl::CPointCloudColoured:

    _static/preview_CPointCloudColoured.png
  • mrpt::opengl::CPolyhedron:

    _static/preview_CPolyhedron.png
  • mrpt::opengl::CSetOfLines:

    _static/preview_CSetOfLines.png
  • mrpt::opengl::CSphere:

    _static/preview_CSphere.png
  • mrpt::opengl::CText:

    _static/preview_CText.png
  • mrpt::opengl::CText3D:

    _static/preview_CText3D.png
  • mrpt::opengl::CEllipsoidRangeBearing2D:

    _static/preview_CEllipsoidRangeBearing2D.png
  • mrpt::opengl::CEllipsoidInverseDepth2D:

    _static/preview_CEllipsoidInverseDepth2D.png
  • mrpt::opengl::CEllipsoidInverseDepth3D:

    _static/preview_CEllipsoidInverseDepth3D.png
  • mrpt::opengl::COctoMapVoxels:

    _static/preview_COctoMapVoxels.png
  • mrpt::opengl::CVectorField2D:

    _static/preview_CVectorField2D.png
  • mrpt::opengl::CVectorField3D:

    _static/preview_CVectorField3D.png
  • mrpt::opengl::stock_objects::BumblebeeCamera():

    _static/preview_stock_objects_BumblebeeCamera.png
  • mrpt::opengl::stock_objects::CornerXYSimple():

    _static/preview_stock_objects_CornerXYSimple.png
  • mrpt::opengl::stock_objects::CornerXYZSimple():

    _static/preview_stock_objects_CornerXYSimple.png
  • mrpt::opengl::stock_objects::CornerXYZ():

    _static/preview_stock_objects_CornerXYZ.png
  • mrpt::opengl::stock_objects::RobotPioneer():

    _static/preview_stock_objects_RobotPioneer.png
  • mrpt::opengl::stock_objects::RobotRhodon():

    _static/preview_stock_objects_RobotRhodon.png
  • mrpt::opengl::stock_objects::Hokuyo_URG():

    _static/preview_stock_objects_Hokuyo_URG.png
  • mrpt::opengl::stock_objects::Hokuyo_UTM():

    _static/preview_stock_objects_Hokuyo_UTM.png
  • mrpt::opengl::stock_objects::Househam_Sprayer():

    _static/preview_stock_objects_Househam_Sprayer.png

Also, pose PDF classes can be converted into OpenGL objects with CSetOfObjects::posePDF2opengl():

  • mrpt::opengl::CSetOfObjects::posePDF2opengl() for mrpt::poses::CPosePDFParticles:

    _static/preview_CPosePDFParticles_as_opengl.png

Note: The following extra OpenGL classes are provided by other libraries:

  • mrpt::opengl::CAngularObservationMesh (in mrpt-maps):

    _static/preview_CAngularObservationMesh.png
  • mrpt::opengl::CPlanarLaserScan (in mrpt-maps):

    _static/preview_CPlanarLaserScan.png

Library contents