template class mrpt::graphs::detail::CMRVisualizer

Overview

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

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.

#include <mrpt/graphs/CMRVisualizer.h>

template <
    class CPOSE,
    class MAPS_IMPLEMENTATION,
    class NODE_ANNOTATIONS = mrpt::graphs::detail::TMRSlamNodeAnnotations,
    class EDGE_ANNOTATIONS = mrpt::graphs::detail::edge_annotations_empty
    >
class CMRVisualizer: public mrpt::graphs::detail::CVisualizer
{
public:
    // typedefs

    typedef CVisualizer<CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS> parent;
    typedef mrpt::graphs::CNetworkOfPoses<CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS> GRAPH_T;

    // construction

    CMRVisualizer(const GRAPH_T& graph_in);

    // methods

    virtual void drawNodePoints(
        mrpt::opengl::CSetOfObjects::Ptr& object,
        const mrpt::containers::yaml* viz_params = nullptr
        ) const;

    virtual void drawEdges(
        mrpt::opengl::CSetOfObjects::Ptr& object,
        const mrpt::containers::yaml* viz_params = nullptr
        ) const;

    virtual void getAs3DObject(mrpt::opengl::CSetOfObjects::Ptr& object, const mrpt::containers::yaml& viz_params) const;
};

Inherited Members

public:
    // typedefs

    typedef mrpt::graphs::CNetworkOfPoses<CPOSE, MAPS_IMPLEMENTATION, NODE_ANNOTATIONS, EDGE_ANNOTATIONS> GRAPH_T;

Methods

virtual void getAs3DObject(mrpt::opengl::CSetOfObjects::Ptr& object, const mrpt::containers::yaml& viz_params) const

Common visualization stuff for all derived classes.

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