#include <GraphvizFormatting.h>
Public Types | |
enum | Axis { X, Y, Z, NEGX, NEGY, NEGZ } |
World axes to be assigned to paper axes. More... | |
Public Member Functions | |
std::optional< Vector2 > | extractPosition (const Value &value) const |
Extract a Vector2 from either Vector2, Pose2, Pose3, or Point3. More... | |
std::optional< Vector2 > | factorPos (const Vector2 &min, size_t i) const |
Return affinely transformed factor position if it exists. More... | |
Vector2 | findBounds (const Values &values, const KeySet &keys) const |
GraphvizFormatting () | |
std::optional< Vector2 > | variablePos (const Values &values, const Vector2 &min, Key key) const |
Return affinely transformed variable position if it exists. More... | |
Public Member Functions inherited from gtsam::DotWriter | |
void | digraphPreamble (std::ostream *os) const |
Write out preamble for digraph, including size. More... | |
DotWriter (double figureWidthInches=5, double figureHeightInches=5, bool plotFactorPoints=true, bool connectKeysToFactor=true, bool binaryEdges=false) | |
void | drawVariable (Key key, const KeyFormatter &keyFormatter, const std::optional< Vector2 > &position, std::ostream *os) const |
Create a variable dot fragment. More... | |
void | graphPreamble (std::ostream *os) const |
Write out preamble for graph, including size. More... | |
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. More... | |
std::optional< Vector2 > | variablePos (Key key) const |
Return variable position or none. More... | |
Public Attributes | |
bool | mergeSimilarFactors |
Axis | paperHorizontalAxis |
Axis | paperVerticalAxis |
double | scale |
Scale all positions to reduce / increase density. More... | |
Public Attributes inherited from gtsam::DotWriter | |
bool | binaryEdges |
just use non-dotted edges for binary factors More... | |
std::set< Key > | boxes |
bool | connectKeysToFactor |
std::map< size_t, Vector2 > | factorPositions |
double | figureHeightInches |
The figure height on paper in inches. More... | |
double | figureWidthInches |
The figure width on paper in inches. More... | |
bool | plotFactorPoints |
Plots each factor as a dot between the variables. More... | |
std::map< char, double > | positionHints |
std::map< Key, Vector2 > | variablePositions |
Additional Inherited Members | |
Static Public Member Functions inherited from gtsam::DotWriter | |
static void | DrawFactor (size_t i, const std::optional< Vector2 > &position, std::ostream *os) |
Create factor dot. More... | |
Formatting options and functions for saving a NonlinearFactorGraph instance in GraphViz format.
Definition at line 32 of file GraphvizFormatting.h.
World axes to be assigned to paper axes.
Enumerator | |
---|---|
X | |
Y | |
Z | |
NEGX | |
NEGY | |
NEGZ |
Definition at line 34 of file GraphvizFormatting.h.
|
inline |
Default constructor sets up robot coordinates. Paper horizontal is robot Y, paper vertical is robot X. Default figure size of 5x5 in.
Definition at line 46 of file GraphvizFormatting.h.
std::optional< Vector2 > gtsam::GraphvizFormatting::factorPos | ( | const Vector2 & | min, |
size_t | i | ||
) | const |
Return affinely transformed factor position if it exists.
Definition at line 136 of file GraphvizFormatting.cpp.
Definition at line 30 of file GraphvizFormatting.cpp.
std::optional< Vector2 > gtsam::GraphvizFormatting::variablePos | ( | const Values & | values, |
const Vector2 & | min, | ||
Key | key | ||
) | const |
Return affinely transformed variable position if it exists.
Definition at line 124 of file GraphvizFormatting.cpp.
bool gtsam::GraphvizFormatting::mergeSimilarFactors |
Merge multiple factors that have the same connectivity
Definition at line 41 of file GraphvizFormatting.h.
Axis gtsam::GraphvizFormatting::paperHorizontalAxis |
The world axis assigned to the horizontal paper axis
Definition at line 36 of file GraphvizFormatting.h.
Axis gtsam::GraphvizFormatting::paperVerticalAxis |
The world axis assigned to the vertical paper axis
Definition at line 38 of file GraphvizFormatting.h.
double gtsam::GraphvizFormatting::scale |
Scale all positions to reduce / increase density.
Definition at line 40 of file GraphvizFormatting.h.