Search this API

Package y.layout.organic

Provides organic layout style algorithms that are based on a force-directed layout paradigm.

See:
          Description

Interface Summary
EllipticalGroupBoundsCalculator.ShapePointProvider A ShapePointProvider retrieves the points that lie on the convex hull (the shape points) of the visual shape of the nodes in the graph.
InteractiveOrganicLayouter.SingleThreadContext A InteractiveOrganicLayouter.SingleThreadContext provides control over the layout calculation in the case of single-threaded algorithm execution.
 

Class Summary
EllipticalGroupBoundsCalculator EllipticalGroupBoundsCalculator is a GroupBoundsCalculator implementation which assumes that group nodes have an elliptical shape.
EllipticalGroupBoundsCalculator.EllipticalShapePointProvider This is a default implementation of EllipticalGroupBoundsCalculator.ShapePointProvider that assumes elliptical node shapes.
GRIP This layout algorithm arranges graphs in an organic fashion.
GroupedShuffleLayouter This algorithm recursively removes node overlaps from a graph with a hierarchic group structure.
InteractiveOrganicLayouter This algorithm arranges graphs in an organic fashion and offers special functionality to interact with the graph while the algorithm is running.
OrganicLayouter A layout algorithm that arranges graphs in an organic fashion, using a force-directed drawing approach.
OrganicPartitionGridLayoutStage This layout stage enables support for handling a graph with a PartitionGrid structure.
OrganicRemoveOverlapsStage This layout stage removes node overlaps while changes to the original layout structure are avoided and a specified minimum node distance is guaranteed.
OutputRestriction OutputRestrictions restrict the output area and the shape of a layout in conjunction with organic layout algorithms such as SmartOrganicLayouter or InteractiveOrganicLayouter.
RemoveOverlapsLayoutStage This LayoutStage removes node overlaps and guarantees a certain minimum distance between nodes.
ShuffleLayouter This layout algorithm removes overlaps between nodes in a graph.
SmartOrganicLayouter This layout algorithm arranges graphs in an organic fashion.
SplitEdgeLayoutStage This layout stage replaces edges by a path of split-edges with a specified length before it calls a core layout algorithm.
 

Package y.layout.organic Description

Provides organic layout style algorithms that are based on a force-directed layout paradigm.

Organic layouts distribute nodes in a natural way and are well suited to exhibit clusters and symmetric properties of a graph.

SmartOrganicLayouter, the main implementation for the organic layout style, supports both complete re-layout of a given diagram as well as incremental layout where only a subset of a diagram should be rearranged.
Also, SmartOrganicLayouter supports layout of "flat" as well as grouped graphs, i.e., graphs where nodes are contained within other so-called group nodes.

InteractiveOrganicLayouter provides support for interactive layouts, enabling live interactions with an adapting organic graph layout.

Note that OrganicLayouter is a legacy layout algorithm for the organic layout style. It is superseded by SmartOrganicLayouter, which adds features to prevent node (label) overlaps and to keep minimum distances between the nodes.

Example Graphs


Organic layout

Organic layout of a mesh-like graph structure

Organic layout containing group nodes

Related Documentation

See the description in the yFiles Developer's Guide section on the organic layout style.
Interactive organic layout is described in the following section of the Developer's Guide: Interactive Organic Layout.

 

© Copyright 2000-2022,
yWorks GmbH.
All rights reserved.