The layout of a diagram consists in arranging the shapes (sometimes also the connections) in some fashion in order to achieve an aesthetically pleasing experience to the user. It aims at giving a more direct insight in the information contained within the diagram and its relational structure.
The RadDiagram control has more than 11 built-in layouts. To take advantage of them you should enable layouting in the LayoutSettings property. Then use the Type(Tree, Layered, Force-directed) and Subtype properties to define the desired layout.
On a technical level, layout consists of a multitude of algorithms and optimizations:
- analysis of the relational structure (loops, multi-edge occurrence...)
- connectedness of the diagram and the splitting into disconnected components
- crossings of connections
- bends and length of links
and various ad-hoc calculations which depend on the type of layout. The criteria on which an algorithm is based vary but the common denominator is:
- a clean separation of connected components (subgraphs)
- an orderly organization of the shapes in such a way that siblings are close to another, i.e. a tight packing of shapes which belong together (parent of child relationship)
- a minimum of connection crossings