MRPT  2.0.0
List of all members | Public Types | Public Member Functions | Protected Attributes
mrpt::graphs::detail::CMRVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS > Class Template Reference

Detailed Description

template<class CPOSE, class MAPS_IMPLEMENTATION, class NODE_ANNOTATIONS = mrpt::graphs::detail::TMRSlamNodeAnnotations, class EDGE_ANNOTATIONS = mrpt::graphs::detail::edge_annotations_empty>
class mrpt::graphs::detail::CMRVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >

Wrapper class that provides visualization of a network of poses that have been registered by many graphSLAM agents/robots.

Note
This is a dummy 4 template arguments version of the CMRVisualizer class just to silence GCC warnings on conversions. For implementation details users should see its specialized version that runs specifically for TMRSlamNodeAnnotations as the 3rd template argument.

Definition at line 36 of file CMRVisualizer.h.

#include <mrpt/graphs/CMRVisualizer.h>

Inheritance diagram for mrpt::graphs::detail::CMRVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >:

Public Types

using parent = CVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >
 
using GRAPH_T = mrpt::graphs::CNetworkOfPoses< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >
 

Public Member Functions

 CMRVisualizer (const GRAPH_T &graph_in)
 
 ~CMRVisualizer () override
 
void drawNodePoints (mrpt::opengl::CSetOfObjects::Ptr &object, const mrpt::system::TParametersDouble *viz_params=nullptr) const override
 
void drawEdges (mrpt::opengl::CSetOfObjects::Ptr &object, const mrpt::system::TParametersDouble *viz_params=nullptr) const override
 
virtual void getAs3DObject (mrpt::opengl::CSetOfObjects::Ptr &object, mrpt::system::TParametersDouble viz_params) const
 Common visualization stuff for all derived classes. More...
 

Protected Member Functions

Work-splitting methods

Smaller functions that do add very specific parts to the visual representation

Following functions take an optional TParametersDouble instance containing visualization parameters

virtual void drawGroundGrid (mrpt::opengl::CSetOfObjects::Ptr &object, const mrpt::system::TParametersDouble *viz_params=nullptr) const
 
virtual void drawNodeCorners (mrpt::opengl::CSetOfObjects::Ptr &object, const mrpt::system::TParametersDouble *viz_params=nullptr) const
 
virtual void drawEdgeRelPoses (mrpt::opengl::CSetOfObjects::Ptr &object, const mrpt::system::TParametersDouble *viz_params=nullptr) const
 

Protected Attributes

bool m_is_3D_graph
 
const GRAPH_Tm_graph
 

Member Typedef Documentation

◆ GRAPH_T

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS = mrpt::graphs::detail::TMRSlamNodeAnnotations, class EDGE_ANNOTATIONS = mrpt::graphs::detail::edge_annotations_empty>
using mrpt::graphs::detail::CMRVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::GRAPH_T = mrpt::graphs::CNetworkOfPoses< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS>

Definition at line 44 of file CMRVisualizer.h.

◆ parent

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS = mrpt::graphs::detail::TMRSlamNodeAnnotations, class EDGE_ANNOTATIONS = mrpt::graphs::detail::edge_annotations_empty>
using mrpt::graphs::detail::CMRVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::parent = CVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS>

Definition at line 42 of file CMRVisualizer.h.

Constructor & Destructor Documentation

◆ CMRVisualizer()

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS , class EDGE_ANNOTATIONS >
mrpt::graphs::detail::CMRVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::CMRVisualizer ( const GRAPH_T graph_in)

Definition at line 23 of file CMRVisualizer_impl.h.

References THROW_EXCEPTION.

◆ ~CMRVisualizer()

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS , class EDGE_ANNOTATIONS >
mrpt::graphs::detail::CMRVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::~CMRVisualizer ( )
overridedefault

Member Function Documentation

◆ drawEdgeRelPoses()

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS , class EDGE_ANNOTATIONS >
void mrpt::graphs::detail::CVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::drawEdgeRelPoses ( mrpt::opengl::CSetOfObjects::Ptr object,
const mrpt::system::TParametersDouble viz_params = nullptr 
) const
protectedvirtualinherited

Definition at line 204 of file CVisualizer_impl.h.

◆ drawEdges()

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS , class EDGE_ANNOTATIONS >
void mrpt::graphs::detail::CMRVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::drawEdges ( mrpt::opengl::CSetOfObjects::Ptr object,
const mrpt::system::TParametersDouble viz_params = nullptr 
) const
overridevirtual

◆ drawGroundGrid()

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS , class EDGE_ANNOTATIONS >
void mrpt::graphs::detail::CVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::drawGroundGrid ( mrpt::opengl::CSetOfObjects::Ptr object,
const mrpt::system::TParametersDouble viz_params = nullptr 
) const
protectedvirtualinherited

Definition at line 89 of file CVisualizer_impl.h.

◆ drawNodeCorners()

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS , class EDGE_ANNOTATIONS >
void mrpt::graphs::detail::CVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::drawNodeCorners ( mrpt::opengl::CSetOfObjects::Ptr object,
const mrpt::system::TParametersDouble viz_params = nullptr 
) const
protectedvirtualinherited

Definition at line 160 of file CVisualizer_impl.h.

◆ drawNodePoints()

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS , class EDGE_ANNOTATIONS >
void mrpt::graphs::detail::CMRVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::drawNodePoints ( mrpt::opengl::CSetOfObjects::Ptr object,
const mrpt::system::TParametersDouble viz_params = nullptr 
) const
overridevirtual

◆ getAs3DObject()

template<class CPOSE , class MAPS_IMPLEMENTATION , class NODE_ANNOTATIONS , class EDGE_ANNOTATIONS >
void mrpt::graphs::detail::CVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::getAs3DObject ( mrpt::opengl::CSetOfObjects::Ptr object,
mrpt::system::TParametersDouble  viz_params 
) const
virtualinherited

Common visualization stuff for all derived classes.

Function delegates visualization tasks to the draw* methods according to the user preferences

Definition at line 39 of file CVisualizer_impl.h.

Member Data Documentation

◆ m_graph

template<class CPOSE, class MAPS_IMPLEMENTATION, class NODE_ANNOTATIONS = mrpt::graphs::detail::TNodeAnnotations, class EDGE_ANNOTATIONS = mrpt::graphs::detail::edge_annotations_empty>
const GRAPH_T& mrpt::graphs::detail::CVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::m_graph
protectedinherited

Definition at line 84 of file CVisualizer.h.

◆ m_is_3D_graph

template<class CPOSE, class MAPS_IMPLEMENTATION, class NODE_ANNOTATIONS = mrpt::graphs::detail::TNodeAnnotations, class EDGE_ANNOTATIONS = mrpt::graphs::detail::edge_annotations_empty>
bool mrpt::graphs::detail::CVisualizer< CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS >::m_is_3D_graph
protectedinherited

Definition at line 83 of file CVisualizer.h.




Page generated by Doxygen 1.8.14 for MRPT 2.0.0 Git: b38439d21 Tue Mar 31 19:58:06 2020 +0200 at miƩ abr 1 00:50:30 CEST 2020