Class FastVoronoiAlgorithm
- java.lang.Object
-
- com.macrofocus.treemap.AbstractAlgorithm
-
- com.macrofocus.treemap.fastvoronoi.FastVoronoiAlgorithm
-
- All Implemented Interfaces:
Algorithm
public class FastVoronoiAlgorithm extends AbstractAlgorithm
Implementation of the Voronoi algorithm. It is described in: Arlind Nocaj and Ulrik Brandes "Computing Voronoi Treemaps: Faster, Simpler, and Resolution-independent". In: Eurographics Conference on Visualization (EuroVis) 2012, Volume 31 (2012), Number 3, p. 855-864.
-
-
Constructor Summary
Constructors Constructor Description FastVoronoiAlgorithm()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
breadthFirstLayout(java.awt.Shape shape, MutableTreeMapNode parent, MutableTreeMapNode[] children, double sumSizes, int horizontalVanishingPoint, int verticalVanishingPoint, TreeMapWorker worker)
Arrange the items in the given array to fill the given shape.boolean
isCompatible(java.awt.Shape shape)
Indicates whether the layout algorithm can handle the given geometry of its parentjava.lang.String
toString()
-
Methods inherited from class com.macrofocus.treemap.AbstractAlgorithm
depthFirstLayout, finishLayout, getProperties, isChildContained, isColorParent, isRenderingLeafLabelsSupported, isRenderingParentLabelSupported, isSpaceFilling, iterator, startLayout, sum
-
-
-
-
Method Detail
-
breadthFirstLayout
public boolean breadthFirstLayout(java.awt.Shape shape, MutableTreeMapNode parent, MutableTreeMapNode[] children, double sumSizes, int horizontalVanishingPoint, int verticalVanishingPoint, TreeMapWorker worker)
Description copied from interface:Algorithm
Arrange the items in the given array to fill the given shape. This is called during the first pass, while traversing the tree top down.- Parameters:
shape
- the current rectangle being divided.parent
- the parent node.children
- the items to map.sumSizes
- the size of the parent.worker
- the worker thread- Returns:
- true if the layout has been cancelled, false otherwise
-
isCompatible
public boolean isCompatible(java.awt.Shape shape)
Description copied from interface:Algorithm
Indicates whether the layout algorithm can handle the given geometry of its parent- Parameters:
shape
- the geometry of its parent- Returns:
- true if it can lay out the children using the specified geometrical shape
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-