GTSAM  4.0.2
C++ library for smoothing and mapping (SAM)
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
gtsam::DotWriter Struct Reference

DotWriter is a helper class for writing graphviz .dot files. More...

#include <DotWriter.h>

Inheritance diagram for gtsam::DotWriter:
Inheritance graph
[legend]

Public Member Functions

 DotWriter (double figureWidthInches=5, double figureHeightInches=5, bool plotFactorPoints=true, bool connectKeysToFactor=true, bool binaryEdges=false)
 
void graphPreamble (std::ostream *os) const
 Write out preamble for graph, including size.
 
void digraphPreamble (std::ostream *os) const
 Write out preamble for digraph, including size.
 
void drawVariable (Key key, const KeyFormatter &keyFormatter, const std::optional< Vector2 > &position, std::ostream *os) const
 Create a variable dot fragment.
 
std::optional< Vector2 > variablePos (Key key) const
 Return variable position or none.
 
void processFactor (size_t i, const KeyVector &keys, const KeyFormatter &keyFormatter, const std::optional< Vector2 > &position, std::ostream *os) const
 Draw a single factor, specified by its index i and its variable keys.
 

Static Public Member Functions

static void DrawFactor (size_t i, const std::optional< Vector2 > &position, std::ostream *os)
 Create factor dot.
 

Public Attributes

double figureWidthInches
 The figure width on paper in inches.
 
double figureHeightInches
 The figure height on paper in inches.
 
bool plotFactorPoints
 Plots each factor as a dot between the variables.
 
bool connectKeysToFactor
 
bool binaryEdges
 just use non-dotted edges for binary factors
 
std::map< Key, Vector2 > variablePositions
 
std::map< char, double > positionHints
 
std::set< Keyboxes
 
std::map< size_t, Vector2 > factorPositions
 

Detailed Description

DotWriter is a helper class for writing graphviz .dot files.

Member Data Documentation

◆ boxes

std::set<Key> gtsam::DotWriter::boxes

A set of keys that will be displayed as a box

◆ connectKeysToFactor

bool gtsam::DotWriter::connectKeysToFactor

Draw a line from each key within a factor to the dot of the factor

◆ factorPositions

std::map<size_t, Vector2> gtsam::DotWriter::factorPositions

Factor positions can be optionally specified and will be included in the dot file with a "!' sign, so "neato" can use it to render them.

◆ positionHints

std::map<char, double> gtsam::DotWriter::positionHints

The position hints allow one to use symbol character and index to specify position. Unless variable positions are specified, if a hint is present for a given symbol, it will be used to calculate the positions as (index,hint).

◆ variablePositions

std::map<Key, Vector2> gtsam::DotWriter::variablePositions

Variable positions can be optionally specified and will be included in the dot file with a "!' sign, so "neato" can use it to render them.


The documentation for this struct was generated from the following file: