Provides tree layout style algorithms.
Classes
| Class | Description | |
|---|---|---|
| AbstractNodePlacer |
Utility class that serves as a basis for implementations of the
INodePlacer
interface.
| |
| AbstractRotatableNodePlacer |
This is an abstract base class for NodePlacers that supports rotations. "Supporting rotation" means that the NodePlacers only implement the default direction (e.g. | |
| 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
INodePlacer
.
| |
| 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. The type of a child is recognized using a DataProvider providing boolean values. | |
| 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. The BusPlacer is rotatable using the constructor BusPlacer(AbstractRotatableNodePlacer..::..Matrix) . | |
| DefaultNodePlacer |
Versatile default implementation of
INodePlacer
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
INodePlacer
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. This node placer is especially useful for leaves with great width. | |
| 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. | |
| 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.
| |
| NodeOrderComparator |
This comparator compares edges by examining the
IComparable
that is obtained by passing the
target nodes
to
the
get method
of the
IDataProvider
bound to the graph via the
NodeOrderDpKey
key.
| |
| SimpleNodePlacer | This is a "default" NodePlacer. | |
| SubtreeShapeRotated | Decorates a SubtreeShape and provides rotated access on it. | |
| 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.
|
Interfaces
| Interface | Description | |
|---|---|---|
| INodePlacer |
This interface is used by
GenericTreeLayouter
.
| |
| IPortAssignment |
This interface is used by
GenericTreeLayouter
.
| |
| IProcessor |
A processor is the possibility for each NodePlacer to prepare (and clean up) the graph for its children. It is created within CreateProcessor(GenericTreeLayouter, LayoutGraph, Node) and called by the GenericTreeLayouter at specific positions of the life-cycle. The processor may change the values within the DataMaps for its children. |
Enumerations
| Enumeration | Description | |
|---|---|---|
| ChildOrderingPolicy | Child ordering policy specifier constant. | |
| ChildPlacement | Placement byte constant used for the childPlacement property. | |
| ChildPlacementPolicy | Symbolic child placement policy specifier. | |
| ConnectorDirection |
Direction constant used by
ConnectorDirection
.
| |
| EdgeLayoutStyle | Layout style constant. | |
| FillStyle | Byte constant that can be used for the fillStyle property. | |
| LayeredRoutingStyle | Layout style constant. | |
| Orientation | Orientation specifier. | |
| ParentConnectorDirection | ||
| PortAssignmentMode | ||
| PortStyle | Port style constant. | |
| RootAlignment | Alignment byte constant used for the rootAlignment property. | |
| RootNodePolicy | Root node policy specifier constant. | |
| RoutingStyle | Routing style byte constant used for the routingStyle property. |
Remarks
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
INodePlacer
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 .
The section Generic Tree Layout extensively discusses the advanced capabilities of class GenericTreeLayouter and also its numerous NodePlacer implementations.
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.