de.cau.cs.kieler.klay.layered.p4nodes
Class LinearSegmentsNodePlacer
java.lang.Object
de.cau.cs.kieler.core.alg.AbstractAlgorithm
de.cau.cs.kieler.klay.layered.p4nodes.LinearSegmentsNodePlacer
- All Implemented Interfaces:
- IAlgorithm, ILayoutPhase, ILayoutProcessor
public class LinearSegmentsNodePlacer
- extends AbstractAlgorithm
- implements ILayoutPhase
Node placement implementation that aligns long edges using linear segments. Inspired by Section 4 of
- Georg Sander. A fast heuristic for hierarchical Manhattan layout. In Proceedings of the
Symposium on Graph Drawing (GD '95), pp. 447-458, Springer, 1996.
- Precondition:
- the graph has a proper layering with optimized nodes ordering; ports are properly arranged
- Postcondition:
- each node is assigned a vertical coordinate such that no two nodes overlap; the size of each
layer is set according to the area occupied by contained nodes; the height of the graph is set to
the maximal layer height
- Rating

Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LinearSegmentsNodePlacer
public LinearSegmentsNodePlacer()
getIntermediateProcessingStrategy
public IntermediateProcessingStrategy getIntermediateProcessingStrategy(LayeredGraph graph)
- Returns the intermediate layout processors this phase depends on.
- Specified by:
getIntermediateProcessingStrategy
in interface ILayoutPhase
- Parameters:
graph
- the layered graph to be processed. The strategy may vary
depending on certain properties of the graph.
- Returns:
- intermediate processing strategy. May be
null
.
process
public void process(LayeredGraph layeredGraph)
- Performs the phase's work on the given graph.
- Specified by:
process
in interface ILayoutProcessor
- Parameters:
layeredGraph
- a layered graph