This layouting algorithm constitutes a specialization of the
Orthogonal Layout method. The directed variant
distinguishes between "directed" and "undirected" edges and tries to
route edges in such a way, that all "directed" edges point in a main
layout direction. Additionally, automatic edge grouping is supported.
Directed orthogonal layout is well-suited for arranging UML
class diagrams.
Layout Tab
Grid
Defines the virtual grid spacing used by the layouter. Each node will be
placed in such a way that its center point lies on a grid point. Edges will
be routed in such a way that their segments lie on grid lines if the
terminal nodes of the edges permit suitable port placements.
Note that this option is only guaranteed to be obeyed for Normal
layout style while being used as a hint only for the other styles.
Orientation
Determines the main layout orientation. The algorithm tries to arrange nodes
in such a way that all edges point in the main layout direction.
- Top to Bottom
- The main layout orientation will be from top to bottom. Note that the
documentation for the other layout options assumes that this default
layout orientation is being used.
- Left to Right
- The main layout orientation will be from left to right.
- Bottom to Top
- The main layout orientation will be from bottom to top.
- Right to Left
- The main layout orientation will be from right to left.
Use Existing Drawing As Sketch
If enabled, the layouter will interpret the initial graph layout
as a sketch of the resulting orthogonal layout. The layouter
tries to "orthogonalize" the given sketch without making too much
modifications in respect to the original drawing.
Identify Directed Edges
Strictly speaking, edges in a yFiles graph are always directed.
Therefore additional information is neccessary to distinguish "directed"
and "undirected" eges belonging to a given graph.
The option Criteria specifies which characteristic trait
of an edge provides that information. Edges satisfying the chosen
criteria are considered "directed", all other edges are considered
"undirected".
The following criteria may be used:
- Line Color
- Edges are classified as "directed"/"undirected" according to their line
color.
- Target Arrow
- Edges are classified as "directed"/"undirected" according to their
target arrow.
- Line Type
- Edges are classified as "directed"/"undirected" according to their line
type.
Automatically group edges
If enabled, "directed" edges that share a common source or target node
are considered an edge group.
Grouped edges will be routed in bus-style, i.e. their paths will share a
common edge segment.
Minimum First Segment Length
Determines the minimum length of the first edge segment.
Minimum Last Segment Length
Determines the minimum length of the last edge segment.
Minimum Segment Length
Determines the minimum length of an edge segment.
Align Degree-One Nodes
If enabled, the algorithm tries to align degree-one nodes having the same neighbour.
Maximum Duration
Specifies a preferred time limit (in seconds) for the layout algorithm.
Note that restricting the maximal duration may reduce the overall layout
quality. Furthermore, the actual runtime may exceed the maximal duration
because the layout algorithm still has to find a valid solution.
Substructure Layout Tab
Subtree Layout Style
Specifies the tree layout style that defines the basic arrangement style for subtrees.
- None
-
A tree layout style that defines that subtrees should not be handled specifically.
- Layered
-
A tree layout style that arranges subtrees in a layered tree fashion with grouped edge routes.
- Compact
-
A tree layout style that aims to create maximally compact layouts for the subtrees.
Subtree Orientation
Specifies the desired orientation for subtree layouts.
- Same as Main Orientation
-
The subtree orientation is automatically set to the main layout orientation.
- Top to Bottom
-
The layout orientation for subtrees is from top to bottom.
- Bottom to Top
-
The layout orientation for subtrees is from bottom to top.
- Left to Right
-
The layout orientation for subtrees is from left to right.
- Right to Left
-
The layout orientation for subtrees is from right to left.
Minimum Tree Size
Specifies the minimum size (number of nodes) a subtree needs to have to be detected
and explicitly handled as a tree substructure.
Chain Layout Style
Specifies the chain layout style that defines how chain substructures are arranged.
- None
-
A chain layout style that defines that chains should not be handled specifically.
- Wrapped - Nodes at Turns
-
A chain layout style that defines that chains are line/column-wrapped such that nodes form the turns/corners
of the chain arrangement.
- Wrapped - Bends at Turns
-
A chain layout style that defines that chains are line/column wrapped such that bends of the chain edges form
the turns/corners of the chain arrangement.
Minimum Chain Size
Specifies the minimum size (number of nodes) a chain needs to have to be detected
and handled as a chain substructure.
Cycle Layout Style
Specifies the cycle layout style that defines how cycle substructures are arranged.
- None
-
A cycle layout style that defines that cycles should not be handled specifically.
- Circular - Nodes at Corners
-
A cycle layout style that defines that cycle structures are arranged in a circular fashion such
that nodes form the corners of the circular layout.
- Circular - Bends at Corners
-
A cycle layout style that defines that cycle structures are arranged in a circular fashion such
that bends of cycle edges form the corners of the circular layout.
Minimum Cycle Size
Specifies the minimum size (number of nodes) a cycle needs to have to be detected
and explicitly handled as a cycle substructure.
Labeling Tab
Options in this tab determine the edge labeling strategy used by this layouter.
Edge Labeling
- None
- Automatic edge labeling is deactivated.
- Integrated
- Edge labels will be considered during the layout process.
Nodes and edges will be arranged in such a way that there is enough
space for the edge labels not to overlap.
- Generic
- Edge labels will be automatically placed after the layouter
has placed the nodes and edges. Edge labels may overlap with other
elements if there is not enough space to place the labels properly.
The resulting graph layout remains compact.
Edge Label Model
Determines which positions will be available for the edge labels.
- Best
- The default. Chooses the model that fits the specified edge labeling
strategy best.
- As Is
- Uses the individual label models that are currently set on the input
graph. Individual models for edge labels can be changed in the edge or
edge label property dialog.
- Center Slider
- A label model that allows labels to be placed somewhere on the
corresponding edge path. This option is a good choice for
Generic and Integrated edge labeling.
- Side Slider
- A label model that allows labels to be placed along both sides of the
edge path. This option is a good choice for Generic edge
labeling.
- Free
- A label model that allows labels to be placed anywhere.
This model is a very good choice for Integrated edge labeling.
It is not compatible with Generic edge labeling and should
therefore not be used in that combination.
Consider Node Labels
Determines whether node labels should be considered in the layout process.