Class CurvedLineLink<T>
java.lang.Object
com.dlsc.gemsfx.treeview.link.AbstractLinkStrategy<T>
com.dlsc.gemsfx.treeview.link.CurvedLineLink<T>
- Type Parameters:
T- the type of the data value stored in each tree node
- All Implemented Interfaces:
LinkStrategy<T>
A
LinkStrategy that draws a smooth cubic Bézier curve between a parent
and a child node, with a directional arrow at the child end.
The control points of the curve are placed at half the gap distance along the primary axis, producing a characteristic S-shaped connection that clearly indicates the flow direction.
-
Field Summary
Fields inherited from class AbstractLinkStrategy
endX, endY, startX, startY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected ArrayList<javafx.scene.Node> drawLink(TreeNodeView.LayoutDirection direction, double maxDimensionInLine, double startX, double startY, double endX, double endY, double vgap, double hgap) Draws the link for the given start and end coordinates.Methods inherited from class AbstractLinkStrategy
calculateAngle, calculateAngle, calculateAngle, calculateAngle, calculateEndPoints, createSimpleArrow, drawNodeLink, getTangentAngle, getTangentAngle, getTangentAngle
-
Constructor Details
-
CurvedLineLink
public CurvedLineLink()
-
-
Method Details
-
drawLink
protected ArrayList<javafx.scene.Node> drawLink(TreeNodeView.LayoutDirection direction, double maxDimensionInLine, double startX, double startY, double endX, double endY, double vgap, double hgap) Draws the link for the given start and end coordinates.- Specified by:
drawLinkin classAbstractLinkStrategy<T>- Parameters:
direction- the layout directionmaxDimensionInLine- the maximum node dimension in the active linestartX- the x-coordinate of the link startstartY- the y-coordinate of the link startendX- the x-coordinate of the link endendY- the y-coordinate of the link endvgap- the vertical gap between levelshgap- the horizontal gap between levels- Returns:
- the nodes used to render the link
-