This layout positions nodes in a circular arrangement. This layout makes use of a LayoutNetwork of CircularVertexes and CircularEdges that normally correspond to the Nodes and Links of the Diagram.
Constructs a CircularLayout with no Layout#network and with no owning Layout#diagram.
Nodes are sorted using the #comparer, in ascending order; This value is used for CircularLayout#sorting.
The ring is filled by alternating sides; the second node is counterclockwise from the first node; This value is used for CircularLayout#direction.
The ring is filled by alternating sides; the second node is clockwise from the first node; This value is used for CircularLayout#direction.
The effective diameter is either the width or height of the node, whichever is larger; This will cause circular nodes to touch when CircularLayout#spacing is 0; This is ideal when the nodes are circular.
Rings are filled clockwise; This value is used for CircularLayout#direction.
The angular distance between the nodes is constant; This value is used for CircularLayout#arrangement.
The distance between the centers of the nodes is constant; This value is used for CircularLayout#arrangement.
The spacing between the idealized boundaries of the nodes is constant; This value is used for CircularLayout#arrangement.
Rings are filled counterclockwise; This value is used for CircularLayout#direction.
Nodes are sorted using the #comparer, in reverse ascending (descending) order; This value is used for CircularLayout#sorting.
Nodes are arranged in the order given; This value is used for CircularLayout#sorting.
Nodes are ordered to reduce link crossings; This value is used for CircularLayout#sorting.
The vertices are arranged as close together as possible considering the CircularLayout#spacing, assuming the nodes are rectangular; This value is used for CircularLayout#arrangement.
The effective diameter is sqrt(width^2+height^2); The corners of square nodes will touch at 45 degrees when CircularLayout#spacing is 0; This value is used for CircularLayout#nodeDiameterFormula.
Nodes are arranged in the reverse of the order given; This value is used for CircularLayout#sorting.
Returns the coordinates of the center of the laid-out ellipse.
Gets the effective spacing that may have been calculated by the layout.
Gets the effective X radius that may have been calculated by the layout.
Gets the effective Y radius that may have been calculated by the layout.
Gets or sets how the nodes are spaced.
Gets or sets the top-left point for where the graph should be positioned when laid out.
Gets or sets the ratio of the arrangement's height to its width (1 for a circle, >1 for a vertically elongated ellipse).
Gets or sets the comparer which sorts the data when #sorting is set to CircularLayout#Ascending or CircularLayout#Descending.
Gets the Diagram that owns this layout, if it is the value of Diagram#layout.
Gets or sets whether the nodes are arranged clockwise or counterclockwise.
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 LayoutNetwork used by this Layout, if any.
Specifies how the diameter of nodes will be calculated.
Gets or sets the horizontal radius of the elliptical arrangement.
Gets or sets if and how the nodes are sorted.
Gets or sets the distance between nodes (if #radius is NaN) or the minimum distance between nodes (if #radius is a number).
Gets or sets the angle (in degrees, clockwise from the positive side of the X axis) of the first element.
Gets or sets the absolute angle (in degrees) between the first and last node.
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 CircularVertexes and CircularEdges.
Assign the positions of the vertexes in the network.
A Diagram or a Group or a collection of Parts.
any
any
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
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