Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

The grid sifting heuristic for crossing minimization. More...

#include <ogdf/layered/GridSifting.h>

+ Inheritance diagram for ogdf::GridSifting:

Public Member Functions

const HierarchyLevelsBasereduceCrossings (const SugiyamaLayout &sugi, Hierarchy &H, int &nCrossings) override
 Calls the actual crossing minimization algorithm. More...
 
int verticalStepsBound ()
 Returns the current setting of option verticalStepsBound. More...
 
void verticalStepsBound (int b)
 Sets the option verticalStepsBound to b. More...
 
- Public Member Functions inherited from ogdf::LayeredCrossMinModule
 LayeredCrossMinModule ()
 Creates empty module. More...
 
virtual ~LayeredCrossMinModule ()
 Destruct. More...
 
virtual void cleanup ()
 Performs clean-up. More...
 

Private Attributes

int m_verticalStepsBound = 10
 

Detailed Description

The grid sifting heuristic for crossing minimization.

Implementation of the grid sifting heuristic based on C. Bachmaier, W. Brunner, A. Gleißner, Grid Sifting: Leveling and Crossing Reduction, Technical Report MIP-1103, University of Passau, 2011.

This class implements the interface LayeredCrossMinModule and should be used as a part of the Sugiyama algorithm for drawing layered graphs.

Definition at line 94 of file GridSifting.h.

Member Function Documentation

◆ reduceCrossings()

const HierarchyLevelsBase* ogdf::GridSifting::reduceCrossings ( const SugiyamaLayout sugi,
Hierarchy H,
int &  nCrossings 
)
inlineoverridevirtual

Calls the actual crossing minimization algorithm.

Warning
nCrossings is not set by this implementation!

Implements ogdf::LayeredCrossMinModule.

Definition at line 101 of file GridSifting.h.

◆ verticalStepsBound() [1/2]

int ogdf::GridSifting::verticalStepsBound ( )
inline

Returns the current setting of option verticalStepsBound.

This option determines, how many levels can be traversed in vertical step of the grid sifting algorithm.

Definition at line 116 of file GridSifting.h.

◆ verticalStepsBound() [2/2]

void ogdf::GridSifting::verticalStepsBound ( int  b)
inline

Sets the option verticalStepsBound to b.

Definition at line 119 of file GridSifting.h.

Member Data Documentation

◆ m_verticalStepsBound

int ogdf::GridSifting::m_verticalStepsBound = 10
private

Definition at line 122 of file GridSifting.h.


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