Remarks
A CurveRoutingEdgeDescriptor instance can be specified individually for single edges via edgeDescriptors.
This class is designed such that it allows future additions of new getter methods.
Default Values of Properties
| Name | Default | Description |
|---|---|---|
| curveShortcuts | false | Curved edges do not shortcut. |
| curveUTurnSymmetry | 0 | The symmetry of u-turns is not specifically optimized. |
| minimumEdgeDistance | 10.0 | |
| minimumFirstSegmentLength | 5.0 | |
| minimumLastSegmentLength | 10.0 | |
| minimumNodeToEdgeDistance | 10.0 |
See Also
Members
Properties
- Disabled (default): Each point of the path represents a normal polyline bend point.
- Enabled: Four consecutive points p1, p2, p3, p4 of the resulting edge path need to be interpreted such that p1 is the start point of the cubic bezier curve, p4 is the end point of it and p2, p3 are the two intermediate control points. If p4 is not the last point of the edge path it is at the same time the start point of the next curve. For example, points p1, p2, p3, p4, p5, p6, p7 form a path that consists of two curves: the curve defined by p1, p2, p3, p4 and the curve defined by p4, p5, p6, p7.
Property Value
true if the bends are interpreted as cubic bezier control points, false otherwiseDefault Value
Property Value
true, if curved edges may shortcut and introduce additional edge crossings in favor of more direct curves, false, otherwiseDefault Value
Sample Graphs
If this property is greater than zero, the algorithm tries to achieve a more symmetric path for 180-degree turns (u-turns) by specifically handling them. Symmetric turns likely require more space compared to more direct variants. The value of this property must be within interval [0,1], where a higher value indicates more emphasis on symmetry and lower values that symmetry is not important.
This setting influences the symmetry of a single curved route and does not affect symmetry of multiple curves in relation to each other.
0 might be perceived as being greater than the difference between other values. The reason is that with 0, u-turns are not handled specifically at all.Property Value
[0,1], where a higher value means that symmetric turns are preferredThrows
- Exception ({ name: 'ArgumentError' })
- if the given symmetry value is negative or larger than one
Default Value
Sample Graphs
0.00.Property Value
Throws
- Exception ({ name: 'ArgumentError' })
- if the minimum distance is negative
Default Value
0.Property Value
Throws
- Exception ({ name: 'ArgumentError' })
- if the minimum length of the first segment is negative
Default Value
Sample Graphs
5The minimum length must be greater than or equal to 0.
If the minimum length is zero, the curved route may end with a non-orthogonal last segment such that the port location provided by the coreLayout may also be changed.
Property Value
Throws
- Exception ({ name: 'ArgumentError' })
- if the minimum length of the last segment is negative
Default Value
Sample Graphs
100.Property Value
Throws
- Exception ({ name: 'ArgumentError' })
- if the minimum distance is negative