de.cau.cs.kieler.klay.layered.p3order
Class LayerSweepCrossingMinimizer

java.lang.Object
  extended by de.cau.cs.kieler.core.alg.AbstractAlgorithm
      extended by de.cau.cs.kieler.klay.layered.p3order.AbstractCrossingMinimizer
          extended by 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

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 red

Field Summary
 
Fields inherited from class de.cau.cs.kieler.klay.layered.p3order.AbstractCrossingMinimizer
portBarycenter, portPos
 
Constructor Summary
LayerSweepCrossingMinimizer()
           
 
Method Summary
 void process(LayeredGraph layeredGraph)
          Performs the phase's work on the given graph.
 
Methods inherited from class de.cau.cs.kieler.klay.layered.p3order.AbstractCrossingMinimizer
assignPortPos, distributePorts, getIntermediateProcessingStrategy, getSortedInputPorts
 
Methods inherited from class de.cau.cs.kieler.core.alg.AbstractAlgorithm
getMonitor, reset, reset, setProgressMonitor
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.cau.cs.kieler.core.alg.IAlgorithm
reset, reset, setProgressMonitor
 

Constructor Detail

LayerSweepCrossingMinimizer

public LayerSweepCrossingMinimizer()
Method Detail

process

public void process(LayeredGraph layeredGraph)
Performs the phase's work on the given graph.

Parameters:
layeredGraph - a layered graph