C

EdgeBundleDescriptor

An EdgeBundleDescriptor defines the bundling settings of an edge.
Inheritance Hierarchy

Remarks

The defined settings will be considered by layout algorithms which support edge bundling.

Each EdgeBundleDescriptor can either be specified for a single edge or shared by several edges. It is assigned to an edge by registering an IMapper<K, V> with key EDGE_BUNDLE_DESCRIPTOR_DATA_KEY to the input graph.

For most layout algorithms, there is a corresponding LayoutData<TNode, TEdge, TNodeLabel, TEdgeLabel> that simplifies the process of assigning EdgeBundleDescriptors.

Default Values of Properties

NameDefaultDescription
bezierFittingfalse
Edges resemble B-splines.
bundledfalse
Generally bundling is disabled, only for the radial group layout bundling is enabled by default
considerDirectiontrue
The direction of the edge is considered.

See Also

Developer's Guide

API

EdgeBundling, EDGE_BUNDLE_DESCRIPTOR_DATA_KEY

Members

No filters for this type

Constructors

Creates a new EdgeBundleDescriptor with default settings.

Parameters

Creates a new EdgeBundleDescriptor representing a copy of the given other descriptor instance.

Parameters

descriptor: EdgeBundleDescriptor
The descriptor to copy

Properties

Gets or sets whether or not a bezier curve should be fit to an edge associated with this descriptor.

If disabled, the edges resemble B-splines where points of the path are actually curve points. Therefore, this representation requires a high number of bends to model curves.

If this feature is enabled, a bezier curve is fitted to the start and end point as well as the intermediate control points of the edge. After the fitting, the points of the edge can be interpreted as cubic bezier control points. Each four consecutive points form a bezier curve, where the first and last of the four points represent the start and end of the curve and the second and third points are the control points defining how the curve looks. The second and third points do not necessarily lie on the actual curve.

Enabling bezier fitting will likely reduce the number of bend points necessary to model the curved edge path significantly.
When visualizing a fitted edge, the control points should not simply be connected by straight-line segments. This may lead to bad results, i.e., wrong paths. The points need to be interpreted as cubic bezier control points as described above.
final

Property Value

true if a bezier curve is fitted to an edge associated with this descriptor, false otherwise

Default Value

The default value is: false
Edges resemble B-splines.

See Also

Developer's Guide
Gets or sets whether or not an edge associated with this descriptor should be bundled.
If an edge should not be bundled, the other settings of this descriptor will be ignored.
final

Property Value

true if an edge associated with this descriptor is bundled, false otherwise

Default Value

The default value is: false
Generally bundling is disabled, only for the radial group layout bundling is enabled by default

See Also

Developer's Guide
Gets or sets whether or not the direction of the edge associated to this descriptor should be considered.

During the bundling procedure, the edges are bundled based on their direction such that the incoming edges of a node are bundled separately from its outgoing edges. If the direction of edges adjacent to a node is not considered, then they are not bundled separately.

If the direction of some edges is taken into consideration while the direction of some others (adjacent to the same node) is ignored, the undirected edges are also bundled separately. This is done to distinguish them from the incoming and outgoing edges of the particular node.

For BundledEdgeRouter, this property does not affect the result because all edges are always considered to be undirected.
final

Property Value

true if the direction of the edge is considered, false otherwise

Default Value

The default value is: true
The direction of the edge is considered.

Sample Graphs

ShownSetting: false

See Also

Developer's Guide