Open
Graph Drawing
Framework

 v.2012.05
 

ogdf::SimDrawCaller Class Reference

Calls modified algorithms for simdraw instances. More...

#include <ogdf/simultaneous/SimDrawCaller.h>

Inheritance diagram for ogdf::SimDrawCaller:
ogdf::SimDrawManipulatorModule

List of all members.

Public Member Functions

 SimDrawCaller (SimDraw &SD)
 constructor
void callSugiyamaLayout ()
 runs SugiyamaLayout with modified SplitHeuristic
void callUMLPlanarizationLayout ()
 runs UMLPlanarizationLayout with modified inserter
int callSubgraphPlanarizer (int cc=0, int numberOfPermutations=1)
 runs SubgraphPlanarizer with modified inserter

Private Member Functions

void updateESG ()
 updates m_esg

Private Attributes

EdgeArray< unsigned int > * m_esg
 saves edgeSubGraph data

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.

  SimDraw SD;
  ...
  SimDrawCaller SDC(SD);
  SDC.callSubgraphPlanarizer();

Definition at line 67 of file SimDrawCaller.h.


Constructor & Destructor Documentation


Member Function Documentation

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.

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.

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.

void ogdf::SimDrawCaller::updateESG ( ) [private]

updates m_esg

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


Member Data Documentation

EdgeArray<unsigned int>* ogdf::SimDrawCaller::m_esg [private]

saves edgeSubGraph data

Definition at line 71 of file SimDrawCaller.h.


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