Parasol Planning Library (PPL)
Data Structures
ReebGraphConstruction Class Reference

#include <ReebGraphConstruction.h>

Collaboration diagram for ReebGraphConstruction:
Collaboration graph
[legend]

Data Structures

struct  MeshEdge
 Tetrahedralization edge. Stores associates ReebEdges. More...
 
struct  MeshEdgeEq
 Mesh edge equivalence. Based on source/target pair. More...
 
struct  MeshEdgeHash
 Hash function for MeshEdge. Hash based on source/target pair. More...
 
struct  Parameters
 The parameters for this object. More...
 
struct  ReebArc
 
struct  ReebArcComp
 
struct  ReebNode
 Vertex property of ReebGraph. More...
 
struct  ReebNodeComp
 

Public Member Functions

Operations
void Construct (const WorkspaceDecomposition *_decomposition)
 
WorkspaceSkeleton GetSkeleton ()
 
Accessors

@TODO Fix const-ness of accessors when STAPL fixes sequential graph.

ReebGraphGetReebGraph ()
 Get the embedding graph. More...
 
I/O
void Read (const string &_filename)
 
void Write (const string &_filename)
 

Local Types

typedef tuple< size_t, size_t, size_t > Triangle
 
typedef stapl::sequential::directed_preds_graph< stapl::MULTIEDGES, ReebNode, ReebArcReebGraph
 
typedef ReebGraph::edge_descriptor RGEID
 ReebGraph edge descriptor. More...
 
typedef set< RGEID, ReebArcCompArcSet
 Set of ReebArcs. More...
 
typedef stapl::sequential::directed_preds_graph< stapl::MULTIEDGES, Vector3d, vector< Vector3d > > FlowGraph
 
static Parameters m_defaultParams
 The default parameters. More...
 

Construction

 ReebGraphConstruction ()
 
static void SetDefaultParameters (XMLNode &_node)
 

Detailed Description

Compute an embedded reeb graph of free workspace.

Computation requires a proper tetrahedralization for the computation to work. ReebGraph comprises of ReebNodes and ReebArcs. Nodes represent the critical values of a Morse function, i.e., min, max, saddle, and Arcs are homotopy classes to get between these nodes.

For details of algorithm see: V. Pascucci, G. Scorzelli, P-T. Bremer, A. Mascarenhas, "Robust On-line Computation of Reeb Graphs: Simplicity and Speed," ACM Trans. on Graphics, 26.3.58, July 2007, and In. Proc. of ACM SIGGRAPH, 2007.

Member Typedef Documentation

◆ ArcSet

Set of ReebArcs.

◆ FlowGraph

typedef stapl::sequential::directed_preds_graph< stapl::MULTIEDGES, Vector3d, vector<Vector3d> > ReebGraphConstruction::FlowGraph

Flow graph is a directed multiedge graph of points and paths. Is a flow of the embedded ReebGraph.

◆ ReebGraph

typedef stapl::sequential::directed_preds_graph< stapl::MULTIEDGES, ReebNode, ReebArc> ReebGraphConstruction::ReebGraph

ReebGraph is a directed, multiedge graph between ReebNode and ReebArc

◆ RGEID

typedef ReebGraph::edge_descriptor ReebGraphConstruction::RGEID

ReebGraph edge descriptor.

◆ Triangle

typedef tuple<size_t, size_t, size_t> ReebGraphConstruction::Triangle

Triangle: 3 indices for vertex array.

Constructor & Destructor Documentation

◆ ReebGraphConstruction()

ReebGraphConstruction::ReebGraphConstruction ( )

Member Function Documentation

◆ Construct()

void ReebGraphConstruction::Construct ( const WorkspaceDecomposition _decomposition)

Construct a Reeb graph of an environment decomposition.

Parameters
_decompositionThe workspace decomposition to use.
_baseInputPathBase file path for input files.
_baseFilenameBase filename used for saving models

◆ GetReebGraph()

ReebGraph& ReebGraphConstruction::GetReebGraph ( )
inline

Get the embedding graph.

◆ GetSkeleton()

WorkspaceSkeleton ReebGraphConstruction::GetSkeleton ( )

Extract a workspace skeleton from the Reeb graph. @TODO Make this a const function if STAPL ever fixes the sequential graph.

◆ Read()

void ReebGraphConstruction::Read ( const string &  _filename)

Read embedding graph from file

Parameters
_filenameFilename

◆ SetDefaultParameters()

void ReebGraphConstruction::SetDefaultParameters ( XMLNode _node)
static

Set the default parameters from an XML node.

Parameters
_nodeThe XML node to parse.

◆ Write()

void ReebGraphConstruction::Write ( const string &  _filename)

Write embedding graph to file

Parameters
_filenameFilename

Field Documentation

◆ m_defaultParams

ReebGraphConstruction::Parameters ReebGraphConstruction::m_defaultParams
static

The default parameters.


The documentation for this class was generated from the following files: