Search this API

Package y.layout.tree

Provides tree layout style algorithms.

See:
          Description

Interface Summary
FromSketchNodePlacer A FromSketchNodePlacer is responsible for arranging its nodes using a comparator, which sorts the outgoing edges of a node according to the position of their target nodes in the graph before the actual placement happens.
NodePlacer This interface is used by GenericTreeLayouter.
PortAssignment This interface is used by GenericTreeLayouter.
Processor A processor is the possibility for each NodePlacer to prepare (and clean up) the graph for its children.
 

Class Summary
AbstractNodePlacer Utility class that serves as a basis for implementations of the NodePlacer interface.
AbstractRotatableNodePlacer This is an abstract base class for NodePlacers that supports rotations.
AbstractRotatableNodePlacer.Matrix Instances of this class may be used to configure the AbstractRotatableNodePlacer.
AbstractRotatableNodePlacer.RootAlignment This class represents the horizontal alignment of the root node.
ARNodePlacer This class is used by GenericTreeLayouter and implements a sophisticated NodePlacer.
ARTreeLayouter This tree layouter tries to generate compact tree layouts with a certain aspect ratio.
AssistantPlacer The assistant placer is a NodePlacer that delegates the node placement to two different node placers depending on the type of the children.
BalloonLayouter A tree layouter that lays out the subtrees of the tree in a balloon-like fashion.
BalloonLayouter.NodeInfo Encapsulates information bound to a node during the algorithm calculates a layout
BusPlacer The BusPlacer is a special NodePlacer that creates a bus where all child nodes and the root node are connected to.
DefaultNodePlacer Versatile default implementation of NodePlacer used by GenericTreeLayouter.
DefaultPortAssignment This class provides simple default port assignment strategies.
DelegatingNodePlacer The DelegatingNodePlacer may be used to layout the children of the actual node with two different NodePlacers.
DendrogramPlacer This is an implementation of the NodePlacer interface that can be used to create dendrogram-like tree layouts.
DoubleLinePlacer The DoubleLinePlacer is a special node placer that places its children in two lines.
FreePlacer Placer that can be used as simple "pseudo"-placer.
GenericTreeLayouter This class implements the basis of a generic tree layout algorithm.
GenericTreeLayouter.SubtreeShape Instances of this class are used to represent the shape of subtrees during the layout.
GridNodePlacer This NodePlacer arranges nodes into a grid.
HVTreeLayouter This tree layouter allows to layout a tree such that each subgraph rooted at a node can either have a horizontal or vertical layout.
LayeredNodePlacer This NodePlacer calculates and respects layers.
LeafPlacer This implementation can be used to "place" leafs.
LeftRightPlacer The LeftRightPlacer is a NodePlacer that arranges the Nodes on the left and right side of a vertical bus.
LeftRightPlacer.LeftRightDataProvider Utility class providing a method to determine if a given node is aligned left (true) or right (false) to the parent node.
NodeOrderComparator This comparator compares edges by examining the Comparable that is obtained by passing the target nodes to the get method of the DataProvider bound to the graph via the NodeOrderComparator.NODE_ORDER_DPKEY key.
SimpleNodePlacer This is a "default" NodePlacer.
TreeComponentLayouter This stage can be used to do mix layouts for tree-like subgraph structures and the non-tree like rest of a graph.
TreeLayouter Implementation of a layout algorithm for trees.
TreeReductionStage This stage can be used to layout non-tree structures with a tree layout algorithm.
XCoordComparator This comparator compares edges by examining the x-coordinates of the centers of their target nodes.
 

Package y.layout.tree Description

Provides tree layout style algorithms.

Implementations support radial layout of (sub)trees, compact layout obeying a given aspect ratio, and also horizontal/vertical layout of directed (and undirected) trees.

Class GenericTreeLayouter enables the use of NodePlacer implementations which are invoked to calculate the subtrees. Predefined node placers that inherit from abstract class AbstractRotatableNodePlacer allow for rotation of subtrees.
Note that GenericTreeLayouter can be used to emulate the results generated by both TreeLayouter and HVTreeLayouter.

Related Documentation

See the yFiles Developer's Guide section on Tree Layout for descriptions of the yFiles tree layout style algorithms.
The section Generic Tree Layout extensively discusses the advanced capabilities of class GenericTreeLayouter and also its numerous NodePlacer implementations.


© Copyright 2000-2013,
yWorks GmbH.
All rights reserved.