Graph Drawing

 v. 2023.09 (Elderberry)

No Matches
ogdf::SimDrawCaller Class Reference

Calls modified algorithms for simdraw instances. More...

#include <ogdf/simultaneous/SimDrawCaller.h>

+ Inheritance diagram for ogdf::SimDrawCaller:

Public Member Functions

 SimDrawCaller (SimDraw &SD)
void callPlanarizationLayout ()
 runs UMLPlanarizationLayout with modified inserter
int callSubgraphPlanarizer (int cc=0, int numberOfPermutations=1)
 runs SubgraphPlanarizer with modified inserter
void callSugiyamaLayout ()
 runs SugiyamaLayout with modified SplitHeuristic
- Public Member Functions inherited from ogdf::SimDrawManipulatorModule
 SimDrawManipulatorModule ()
 default constructor
 SimDrawManipulatorModule (SimDraw &SD)
const SimDrawconstSimDraw () const
 returns base instance
void init (SimDraw &SD)
 initializing base instance

Private Member Functions

void updateESG ()
 updates m_esg

Private Attributes

EdgeArray< uint32_t > * m_esg
 saves edgeSubGraphs data

Additional Inherited Members

- Protected Attributes inherited from ogdf::SimDrawManipulatorModule
 pointer to current graph
 pointer to current graphattributes
 pointer to current simdraw instance

Detailed Description

Calls modified algorithms for simdraw instances.

Runs special algorithms suitable for simultaneous drawing on current SimDraw instance. The algorithms take care of all necessary GraphAttributes activations and take over calculated coordinates and dummy nodes.

A typical use of SimDrawCaller involves a predefined SimDraw instance on which SimDrawCaller works.

The Base class for simultaneous graph drawing.
Definition SimDraw.h:50
friend class SimDrawCaller
Definition SimDraw.h:52
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()

Definition at line 55 of file SimDrawCaller.h.

Constructor & Destructor Documentation

◆ SimDrawCaller()

ogdf::SimDrawCaller::SimDrawCaller ( SimDraw SD)


Member Function Documentation

◆ callPlanarizationLayout()

void ogdf::SimDrawCaller::callPlanarizationLayout ( )

runs UMLPlanarizationLayout with modified inserter

Runs UMLPlanarizationLayout with callSimDraw and retransfers node coordinates and dummy node bend to current simdraw instance.

Automatically activates GraphAttributes::nodeGraphics.
Automatically activates GraphAttributes::edgeGraphics.

◆ callSubgraphPlanarizer()

int ogdf::SimDrawCaller::callSubgraphPlanarizer ( int  cc = 0,
int  numberOfPermutations = 1 

runs SubgraphPlanarizer with modified inserter

Runs SubgraphPlanarizer on connected component cc with simdraw call. Integer edge costs of GraphAttributes are used (1 for each edge if not available).

Modifies graph by inserting dummy nodes for each crossing. All dummy nodes are marked as dummy. (Method SimDrawColorizer::addColorNodeVersion is recommended for visualizing dummy nodes.)

No layout is calculated. The result is a planar graph.

◆ callSugiyamaLayout()

void ogdf::SimDrawCaller::callSugiyamaLayout ( )

runs SugiyamaLayout with modified SplitHeuristic

Runs special call of SugiyamaLayout using SugiyamaLayout::setSubgraphs(). Saves node coordinates and dummy node bends in current simdraw instance.

Uses TwoLayerCrossMinSimDraw object to perform crossing minimization. The default is SplitHeuristic.

Automatically activates GraphAttributes::nodeGraphics.
Automatically activates GraphAttributes::edgeGraphics.

◆ updateESG()

void ogdf::SimDrawCaller::updateESG ( )

updates m_esg

Should be called whenever graph changed and current basic graph membership is needed.

Member Data Documentation

◆ m_esg

EdgeArray<uint32_t>* ogdf::SimDrawCaller::m_esg

saves edgeSubGraphs data

Definition at line 57 of file SimDrawCaller.h.

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