de.cau.cs.kieler.klay.layered.p3order
Class LayerSweepCrossingMinimizer
java.lang.Object
de.cau.cs.kieler.core.alg.AbstractAlgorithm
de.cau.cs.kieler.klay.layered.p3order.AbstractCrossingMinimizer
de.cau.cs.kieler.klay.layered.p3order.LayerSweepCrossingMinimizer
- All Implemented Interfaces:
- IAlgorithm, ILayoutPhase, ILayoutProcessor
public class LayerSweepCrossingMinimizer
- extends AbstractCrossingMinimizer
Crossing minimization module that performs one or more sweeps over the layers while applying a
two-layer crossing minimization heuristic on each pair of layers. Inspired by
- Kozo Sugiyama, Shojiro Tagawa, and Mitsuhiko Toda. Methods for visual understanding of
hierarchical system structures. IEEE Transactions on Systems, Man and Cybernetics, 11(2):109–125,
February 1981.
- Michael Forster. A fast and simple heuristic for constrained two-level crossing reduction. In
Graph Drawing, volume 3383 of LNCS, pp. 206-216. Springer, 2005.
- Precondition:
- The graph has a proper layering, i.e. all long edges have been splitted; all nodes have at
least fixed port sides.
- Postcondition:
- The order of nodes in each layer and the order of ports in each node are optimized to yield
as few edge crossings as possible
- Rating

Method Summary |
void |
process(LayeredGraph layeredGraph)
Performs the phase's work on the given graph. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LayerSweepCrossingMinimizer
public LayerSweepCrossingMinimizer()
process
public void process(LayeredGraph layeredGraph)
- Performs the phase's work on the given graph.
- Parameters:
layeredGraph
- a layered graph