Orthogonal Layout (Compact)

This layouting algorithm is a specialized variant of the Orthogonal Layout method. It uses a divide-and-conquer approach to achieve compact orthogonal layouts that try to respect a specified aspect ratio. The basic idea is to calculate graph partitions which can be laid out according to preferred aspect ratio.

Orthogonal Layout Style

Normal
Node sizes will not be changed by this layouter. The drawing will contain very few bends only.
Normal + Tree
Same as Normal but larger subtrees are layouted using a specialized tree layouting algorithm which is better suited for tree like structures than the original orthogonal layout style.
Mixed (Size Fixed)
Like Mixed but maintains original node sizes.
Node Boxes (Size Fixed)
Like Node Boxes but maintains original node sizes.

Subgraph Placement Strategy

Multiple Rows
Components are arranged in rows.
Compact Rectangle
Rectangular component arrangement where gaps within components are used to place other components.

Use Aspect Ratio of View

Specifies that the current aspect ratio of the editor’s viewer component should be used as preferred aspect ratio for layout calculation.

Aspect Ratio (Width/Height)

Specifies the preferred aspect ratio for the calculated layout.

Grid Spacing

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.

Path Finding Algorithm

High Quality Edge Routing
Computes edge paths with minimal number of bends.
High Performance Edge Routing
Finds edge paths using a pattern-based approach, which takes less time than the high-quality algorithm.

Route All Edges

Specifies whether the algorithm should reroute all edges after the partitions have been laid out or only edges connecting nodes in separate partitions.

Bend Cost

Sets the cost for each bend of a routed path. Higher values will lead to edge paths with lesser bends.

Node Overlap Cost

Sets the cost for an edge/node overlap. Higher values will reduce the likelihood of such overlaps.

Minimum Edge Distance

Determines the distance between any two edge segments. The edge router adheres to the set value as possible, but reduces the distance value selectively, i.e. only for a currently processed edge, when there is too little space to find a path with the proper value.

Edge Crossing Cost

Sets the cost for each edge crossing of a routed path. A cost of n means that a path rather changes direction n times than crossing the path of an edge. Setting a higher value will activate global crossing minimization. A good trade-off between the number of direction changes and few crossings of a path is achieved by values between 1 and 3.

Space Driven vs. Center Driven Search

Determines the ratio between two complementary weighting strategies when looking for an edge path, namely “center driven” and “space driven” weighting. The ratio is expressed with a value between 0.0 and 1.0. Values closer to 0.0 lead to edge paths that are more distributed over the available space. Values closer to 1.0 give more emphasis to edge paths closer to an edge’s center.