This layout positions nodes in a tree-like arrangement.
Constructs a TreeLayout with no Layout#network and with no owning Layout#diagram.
The children are positioned in a bus, only on the bottom or right side of the parent; This value is used for TreeLayout#alignment or TreeLayout#alternateAlignment.
The children are positioned in a bus on both sides of an "aisle" where the links to them go, with the last odd child (if any) placed at the end of the aisle in the middle.
Like TreeLayout#AlignmentBus with the children arranged on both sides of an "aisle" with any last odd child placed at the end of the aisle, but the children get an TreeVertex#angle that depends on which side of the aisle they were placed.
The parent is centered at the middle of the range of its immediate child nodes; This value is used for TreeLayout#alignment or TreeLayout#alternateAlignment.
The parent is centered at the middle of the range of its child subtrees; This value is used for TreeLayout#alignment or TreeLayout#alternateAlignment.
The parent is positioned near the last of its children; This value is used for TreeLayout#alignment or TreeLayout#alternateAlignment.
The parent is positioned near the first of its children; This value is used for TreeLayout#alignment or TreeLayout#alternateAlignment.
The children are positioned in a bus, only on the top or left side of the parent; This value is used for TreeLayout#alignment or TreeLayout#alternateAlignment.
Do not move each root node, but position all of their descendants relative to their root; This value is used for TreeLayout#arrangement.
Position each tree in a non-overlapping fashion by increasing X coordinates, starting at the Layout#arrangementOrigin; This value is used for TreeLayout#arrangement.
Position each tree in a non-overlapping fashion by increasing Y coordinates, starting at the Layout#arrangementOrigin; This value is used for TreeLayout#arrangement.
A simple fitting of subtrees; This value is used for TreeLayout#compaction or TreeLayout#alternateCompaction.
Only simple placement of children next to each other, as determined by their subtree breadth; This value is used for TreeLayout#compaction or TreeLayout#alternateCompaction.
This value for TreeLayout#path causes the value of Diagram#isTreePathToChildren to effectively choose either TreeLayout#PathDestination (if true) or TreeLayout#PathSource (if false).
The children of a TreeVertex are its LayoutVertex#destinationVertexes, the collection of connected LayoutEdge#toVertexes; This value is used for TreeLayout#path.
The children of a TreeVertex are its LayoutVertex#sourceVertexes, the collection of connected LayoutEdge#fromVertexes; This value is used for TreeLayout#path.
Lay out each child according to the sort order given by TreeVertex#comparer; This value is used for TreeLayout#sorting or TreeLayout#alternateSorting.
Lay out each child in reverse sort order given by TreeVertex#comparer; This value is used for TreeLayout#sorting or TreeLayout#alternateSorting.
Lay out each child in the order in which they were found; This value is used for TreeLayout#sorting or TreeLayout#alternateSorting.
Lay out each child in reverse order from which they were found; This value is used for TreeLayout#sorting or TreeLayout#alternateSorting.
Alternate layers of the tree have different properties, typically including the angle; This value is used for TreeLayout#treeStyle.
Just like the standard layered tree style, except that the nodes with children but no grandchildren have alternate properties; This value is used for TreeLayout#treeStyle.
The normal tree style, where all of the children of each TreeVertex are lined up horizontally or vertically; This value is used for TreeLayout#treeStyle.
All of the nodes get the alternate properties, except the root node gets the default properties; This value is used for TreeLayout#treeStyle.
Gets or sets the default alignment of parents relative to their children.
Gets or sets the default alignment of parents relative to their children.
Gets or sets the default direction for tree growth.
Gets or sets a limit on how broad a tree should be.
Gets or sets the spot that children nodes' ports get as their ToSpot The default value is Spot#Default.
Gets or sets the distance between a node and its comments.
Gets or sets the distance between comments.
Gets or sets how closely to pack the child nodes of a subtree.
Gets or sets the default comparison function used for sorting.
Gets or sets the object holding the default values for alternate layer TreeVertexes, used when the #treeStyle is #StyleAlternating or #StyleLastParents.
Gets or sets the distance between a parent node and its children.
Gets or sets the fraction of the node's depth for which the children's layer starts overlapped with the parent's layer.
Gets or sets the default indentation of the first child.
Gets or sets the fraction of this node's breadth is added to #nodeIndent to determine any spacing at the start of the children.
Gets or sets the distance between child nodes.
Gets or sets the spot that this node's port gets as its FromSpot.
Gets or sets the default indentation of the first child of each row, if the #alignment is not a "Center" alignment.
Gets or sets the distance between rows of children.
Gets or sets whether the TreeLayout should set the ToSpot for each child node port.
Gets or sets whether the TreeLayout should set the FromSpot for this parent node port.
Gets or sets the default Sorting policy.
Gets or sets the default direction for tree growth.
Gets or sets how #arrangeTrees should lay out the separate trees.
Gets or sets the top-left point for where the graph should be positioned when laid out.
Gets or sets the space between which #arrangeTrees will position the trees.
Gets or sets a limit on how broad a tree should be.
Gets or sets the spot that children nodes' ports get as their ToSpot.
Gets or sets the distance between a node and its comments.
Gets or sets the distance between comments.
Gets or sets how closely to pack the child nodes of a subtree.
Gets or sets the default comparison function used for sorting.
Gets the Diagram that owns this layout, if it is the value of Diagram#layout.
Gets the Group that uses this layout, if it is the value of a group's Group#layout.
Gets or sets whether this layout is performed on an initial layout.
Gets or sets whether this layout can be invalidated by #invalidateLayout.
Gets or sets whether this layout be performed in real-time, before the end of a transaction.
Gets or sets whether this layout routes Links.
Gets or sets whether this layout needs to be performed again.
Gets or sets whether this layout depends on the Diagram#viewportBounds's size.
Gets or sets the distance between a parent node and its children.
Gets or sets the fraction of the node's depth for which the children's layer starts overlapped with the parent's layer.
Gets or sets the LayoutNetwork used by this Layout, if any.
Gets or sets the default indentation of the first child.
Gets or sets the fraction of this node's breadth is added to #nodeIndent to determine any spacing at the start of the children.
Gets or sets the distance between child nodes.
Gets or sets how the tree should be constructed from the TreeEdges connecting TreeVertexes.
Gets or sets the spot that this node's port gets as its FromSpot.
Gets or sets the object holding the default values for root TreeVertexes.
Gets or sets the collection of root vertexes.
Gets or sets the default indentation of the first child of each row, if the #alignment is not a "Center" alignment.
Gets or sets the distance between rows of children.
Gets or sets whether the TreeLayout should set the ToSpot for each child node port.
Gets or sets whether the TreeLayout should set the FromSpot for this parent node port.
Gets or sets the default Sorting policy.
Gets or sets the Style for the resulting trees.
Find associated objects to be positioned along with the TreeVertex.
any
Position each separate tree.
any
Assign final property values for a TreeVertex.
any
Set the fromSpot and toSpot for each Vertex, position each Node according to the Vertex position, and then position the Links.
any
Commit the position and routing of all edge links.
any
Commit the position of all vertex nodes.
any
Creates a copy of this Layout and returns it.
Create a new LayoutNetwork of TreeVertexes and TreeEdges.
Assign the positions of the vertexes in the network.
A Diagram or a Group or a collection of Parts.
any
any
any
Assign initial property values for a TreeVertex.
any
If #isOngoing is true and if an initial layout has not yet been performed, set the #isValidLayout property to false, and ask to perform another layout in the near future.
any
Position and TreeVertex#comments around the vertex.
any
Create and initialize a LayoutNetwork with the given nodes and links.
A Diagram or a Group or a collection of Parts.
When using a LayoutNetwork, update the "physical" node positionings and link routings.
any