public class Connection
extends javafx.scene.Group
Connection is a visual curveProperty, whose appearance is
defined through a single start and end point, and a set of control points,
which may be 'connected', i.e. be attached to an IAnchor. The exact
curveProperty shape is determined by an IConnectionRouter, which is
responsible of computing an ICurve geometry for a given
Connection (which is then rendered using a GeometryNode).
Whether the control points are interpreted as way points (that lie on the
curveProperty) or as 'real' control points depends on the
IConnectionInterpolator. While PolylineInterpolator and
PolyBezierInterpolator interpret control points to be way points,
other routers may e.g. interpret them as the control points of a
BezierCurve.
In addition to the curveProperty shape, the visual appearance of a
Connection can be controlled via start and end decorations. They will
be rendered 'on-top' of the curveProperty shape and the curveProperty shape
will be properly clipped at the decorations (so it does not paint through).
| Type | Property and Description |
|---|---|
javafx.beans.property.ReadOnlyListProperty<IAnchor> |
anchorsUnmodifiable
Returns an unmodifiable read-only list property, which contains the
IAnchors that determine the start point, control points, and end
point of this Connection. |
javafx.beans.property.ObjectProperty<javafx.scene.Node> |
curve
Returns a property wrapping the curve
Node. |
javafx.beans.property.ObjectProperty<javafx.scene.Node> |
endDecoration
Returns an
ObjectProperty wrapping the end decoration
Node. |
javafx.beans.property.ObjectProperty<IConnectionInterpolator> |
interpolator
Returns the
IConnectionInterpolator property. |
javafx.beans.property.ReadOnlyListProperty<Point> |
pointsUnmodifiable
Returns an unmodifiable read-only list property, which contains the
points (start, control, end) that constitute this connection.
|
javafx.beans.property.ObjectProperty<IConnectionRouter> |
router
Returns a writable property containing the
IConnectionRouter of
this connection. |
javafx.beans.property.ObjectProperty<javafx.scene.Node> |
startDecoration
Returns an
ObjectProperty wrapping the start decoration
Node. |
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, impl_showMnemonics, impl_treeVisible, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, visible| Constructor and Description |
|---|
Connection()
Constructs a new
Connection whose start and end point are set to
null. |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addAnchor(AnchorKey anchorKey,
IAnchor anchor)
|
void |
addControlAnchor(int index,
IAnchor anchor)
Adds the given
IAnchor as a control point anchor for the given
index into the anchorsUnmodifiableProperty() of this
Connection. |
void |
addControlPoint(int index,
Point controlPoint)
Adds an
StaticAnchor yielding the given Point as a
control point anchor for the given index into the
anchorsUnmodifiableProperty() of this Connection. |
javafx.beans.property.ReadOnlyListProperty<IAnchor> |
anchorsUnmodifiableProperty()
Returns an unmodifiable read-only list property, which contains the
IAnchors that determine the start point, control points, and end
point of this Connection. |
protected javafx.collections.MapChangeListener<? super AnchorKey,? super Point> |
createPCL(AnchorKey anchorKey)
Creates a position change listener (PCL) which
refreshes this Connection upon anchor position changes
corresponding to the given AnchorKey. |
javafx.beans.property.ObjectProperty<javafx.scene.Node> |
curveProperty()
Returns a property wrapping the curve
Node. |
javafx.beans.property.ObjectProperty<javafx.scene.Node> |
endDecorationProperty()
Returns an
ObjectProperty wrapping the end decoration
Node. |
IAnchor |
getAnchor(int index)
Returns the anchor at the given index.
|
protected int |
getAnchorIndex(AnchorKey anchorKey)
Returns the anchor index for the given
AnchorKey. |
protected AnchorKey |
getAnchorKey(int anchorIndex)
Returns the
AnchorKey for the given anchor index, i.e. the
reverse of getAnchorIndex(AnchorKey). |
javafx.collections.ObservableList<IAnchor> |
getAnchorsUnmodifiable()
Returns a
List containing the IAnchors which are assigned
to this Connection in the order: start anchor, control point
anchorsByKeys, end anchor. |
Point |
getCenter()
Computes the 'logical' center point of the
Connection, which is
the middle control point position (in case the curveProperty consists of
an even number of segment) or the middle point of the middle segment. |
IAnchor |
getControlAnchor(int index)
|
protected int |
getControlAnchorIndex(AnchorKey key)
Returns the control anchor index for the given
AnchorKey, i.e. |
protected AnchorKey |
getControlAnchorKey(int index)
Returns the
AnchorKey for the given control anchor index. |
java.util.List<IAnchor> |
getControlAnchors()
|
Point |
getControlPoint(int index)
Returns the control
Point for the given control anchor index
within the coordinate system of this Connection which is
determined by querying the anchor position for the corresponding
control anchor, or null if no
control anchor is assigned for the given
index. |
java.util.List<Point> |
getControlPoints()
|
javafx.scene.Node |
getCurve()
Returns the
Node which displays the curveProperty geometry. |
IAnchor |
getEndAnchor()
|
protected AnchorKey |
getEndAnchorKey()
Returns the end
AnchorKey for this Connection. |
javafx.scene.Node |
getEndDecoration()
|
Point |
getEndPoint()
Returns the end
Point of this Connection within its
coordinate system which is determined by querying the anchor position for
the end anchor key, or null when
no end anchor is assigned. |
Point |
getEndPointHint()
Returns the currently set end position hint or
null if no
hint is present. |
IConnectionInterpolator |
getInterpolator()
Returns the
IConnectionInterpolator of this Connection. |
Point |
getPoint(int index)
Returns the point at the given index.
|
javafx.collections.ObservableList<Point> |
getPointsUnmodifiable()
Returns the
Points constituting this Connection within
its coordinate system in the order: start point, control points, end
point. |
IConnectionRouter |
getRouter()
Returns the
IConnectionRouter of this Connection. |
IAnchor |
getStartAnchor()
|
protected AnchorKey |
getStartAnchorKey()
Returns the start
AnchorKey for this Connection. |
javafx.scene.Node |
getStartDecoration()
|
Point |
getStartPoint()
Returns the start
Point of this Connection within its
coordinate system which is determined by querying the anchor position for
the start anchor key, or null
when no start anchor is assigned. |
Point |
getStartPointHint()
Returns the currently set start position hint or
null if no
hint is present. |
javafx.beans.property.ObjectProperty<IConnectionInterpolator> |
interpolatorProperty()
Returns the
IConnectionInterpolator property. |
boolean |
isConnected(IAnchor anchor)
Return
true in case the anchor is bound to an anchorage
unequal to this connection. |
boolean |
isConnected(int index)
Returns whether the (start, end, or control) anchor at the respective
index is connected.
|
boolean |
isControlConnected(int index)
Returns
true if the currently assigned
control anchor for the given index is
bound to an anchorage. |
boolean |
isEndConnected()
Returns
true if the currently assigned
end anchor is bound to an anchorage. |
boolean |
isStartConnected()
Returns
true if the currently assigned
start anchor is bound to an anchorage. |
double |
maxHeight(double width) |
double |
maxWidth(double height) |
double |
minHeight(double width) |
double |
minWidth(double height) |
javafx.beans.property.ReadOnlyListProperty<Point> |
pointsUnmodifiableProperty()
Returns an unmodifiable read-only list property, which contains the
points (start, control, end) that constitute this connection.
|
protected void |
reattachAnchorKeys(javafx.scene.Node oldAnchored,
javafx.scene.Node newAnchored)
Re-attaches all
AnchorKeys that are managed by this
Connection. |
protected void |
refresh()
Refreshes the visualization in response to anchor, position,
transformation, etc. changes.
|
void |
removeAllControlAnchors()
Removes all control points of this
Connection. |
void |
removeAllControlPoints()
Removes all control points of this
Connection. |
protected void |
removeAnchor(AnchorKey anchorKey,
IAnchor anchor)
|
void |
removeControlAnchor(int index)
Removes the control anchor specified by the given index from this
Connection. |
void |
removeControlPoint(int index)
Removes the control point specified by the given control anchor index
from this
Connection. |
javafx.beans.property.ObjectProperty<IConnectionRouter> |
routerProperty()
Returns a writable property containing the
IConnectionRouter of
this connection. |
protected void |
setAnchor(AnchorKey anchorKey,
IAnchor anchor)
|
void |
setAnchors(java.util.List<IAnchor> anchors)
Replaces all anchors of this
Connection with the given
IAnchors, i.e. the first given IAnchor replaces the
currently assigned start anchor, the last given IAnchor replaces
the currently assigned end anchor, and the intermediate IAnchors
replace the currently assigned control anchorsByKeys. |
void |
setControlAnchor(int index,
IAnchor anchor)
Sets the control anchor for the given control anchor index to the given
IAnchor. |
void |
setControlAnchors(java.util.List<IAnchor> anchors)
|
void |
setControlPoint(int index,
Point controlPoint)
Sets the control anchor for the given control anchor index to an
StaticAnchor which yields the given Point. |
void |
setControlPoints(java.util.List<Point> controlPoints)
|
void |
setCurve(javafx.scene.Node curve)
Sets the
Node that is used to render the connection. |
void |
setEndAnchor(IAnchor anchor)
Sets the end
IAnchor of this Connection to the given
value. |
void |
setEndDecoration(javafx.scene.Node decoration)
Sets the end decoration
Node of this Connection to the
given value. |
void |
setEndPoint(Point endPoint)
|
void |
setEndPointHint(Point endPositionHint)
Sets the end position hint to the given value.
|
void |
setInterpolator(IConnectionInterpolator interpolator)
|
void |
setPoints(java.util.List<Point> points)
Replaces all anchors of this
Connection with the given
IAnchors, i.e. the first given IAnchor replaces the
currently assigned start anchor, the last given IAnchor replaces
the currently assigned end anchor, and the intermediate IAnchors
replace the currently assigned control anchorsByKeys. |
void |
setRouter(IConnectionRouter router)
Sets the
IConnectionRouter of this Connection to the
given value. |
void |
setStartAnchor(IAnchor anchor)
Sets the start
IAnchor of this Connection to the given
value. |
void |
setStartDecoration(javafx.scene.Node decoration)
Sets the start decoration
Node of this Connection to the
given value. |
void |
setStartPoint(Point startPoint)
|
void |
setStartPointHint(Point startPositionHint)
Sets the start position hint to the given value.
|
javafx.beans.property.ObjectProperty<javafx.scene.Node> |
startDecorationProperty()
Returns an
ObjectProperty wrapping the start decoration
Node. |
autoSizeChildrenProperty, getChildren, impl_computeLayoutBounds, isAutoSizeChildren, layoutChildren, prefHeight, prefWidth, setAutoSizeChildrencomputeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, getBaselineOffset, getChildrenUnmodifiable, getImpl_traversalEngine, getManagedChildren, getStylesheets, impl_computeContains, impl_computeGeomBounds, impl_createPeer, impl_getAllParentStylesheets, impl_pickNodeLocal, impl_processCSS, impl_processMXNode, impl_traversalEngineProperty, impl_updatePeer, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute, requestLayout, requestParentLayout, setImpl_traversalEngine, setNeedsLayout, updateBoundsaccessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, containsBounds, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClassCssMetaData, getClip, getContentBias, getCssMetaData, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, hasProperties, hoverProperty, idProperty, impl_clearDirty, impl_computeIntersects, impl_cssGetCursorInitialValue, impl_cssGetFocusTraversableInitialValue, impl_findStyles, impl_geomChanged, impl_getLeafTransform, impl_getMatchingStyles, impl_getPeer, impl_getPivotX, impl_getPivotY, impl_getPivotZ, impl_getStyleMap, impl_hasTransforms, impl_intersects, impl_intersectsBounds, impl_isDirty, impl_isDirtyEmpty, impl_isShowMnemonics, impl_isTreeVisible, impl_layoutBoundsChanged, impl_markDirty, impl_notifyLayoutBoundsChanged, impl_pickNode, impl_processCSS, impl_reapplyCSS, impl_setShowMnemonics, impl_setStyleMap, impl_showMnemonicsProperty, impl_syncPeer, impl_transformsChanged, impl_traverse, impl_treeVisibleProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isResizable, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resize, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, visiblePropertypublic javafx.beans.property.ReadOnlyListProperty<IAnchor> anchorsUnmodifiableProperty
IAnchors that determine the start point, control points, and end
point of this Connection.getAnchorsUnmodifiable()public javafx.beans.property.ObjectProperty<javafx.scene.Node> curveProperty
Node.getCurve(),
setCurve(Node)public javafx.beans.property.ObjectProperty<javafx.scene.Node> endDecorationProperty
ObjectProperty wrapping the end decoration
Node.getEndDecoration(),
setEndDecoration(Node)public javafx.beans.property.ObjectProperty<IConnectionInterpolator> interpolatorProperty
IConnectionInterpolator property.public javafx.beans.property.ReadOnlyListProperty<Point> pointsUnmodifiableProperty
getPointsUnmodifiable()public javafx.beans.property.ObjectProperty<IConnectionRouter> routerProperty
IConnectionRouter of
this connection.getRouter(),
setRouter(IConnectionRouter)public javafx.beans.property.ObjectProperty<javafx.scene.Node> startDecorationProperty
ObjectProperty wrapping the start decoration
Node.getStartDecoration(),
setStartDecoration(Node)public Connection()
Connection whose start and end point are set to
null.protected void addAnchor(AnchorKey anchorKey, IAnchor anchor)
IAnchor into the
anchorsUnmodifiableProperty() of this Connection. The
given AnchorKey is attached to the IAnchor. Furthermore,
a PCL for the AnchorKey is
registered on the position property of the IAnchor and the
visualization is refreshed.public void addControlAnchor(int index,
IAnchor anchor)
IAnchor as a control point anchor for the given
index into the anchorsUnmodifiableProperty() of this
Connection.index - The position where the IAnchor is inserted within the
control point anchorsByKeys of this Connection.anchor - The IAnchor which determines the position of the
corresponding control point.public void addControlPoint(int index,
Point controlPoint)
StaticAnchor yielding the given Point as a
control point anchor for the given index into the
anchorsUnmodifiableProperty() of this Connection.index - The position where the IAnchor is inserted within the
control point anchorsByKeys of this Connection.controlPoint - The position for the specified control point.public javafx.beans.property.ReadOnlyListProperty<IAnchor> anchorsUnmodifiableProperty()
IAnchors that determine the start point, control points, and end
point of this Connection.getAnchorsUnmodifiable()protected javafx.collections.MapChangeListener<? super AnchorKey,? super Point> createPCL(AnchorKey anchorKey)
refreshes this Connection upon anchor position changes
corresponding to the given AnchorKey.anchorKey - The AnchorKey for which a position change will trigger
a refresh() with the returned PCL.refresh this
Connection when the position for the given
AnchorKey changes.public javafx.beans.property.ObjectProperty<javafx.scene.Node> curveProperty()
Node.getCurve(),
setCurve(Node)public javafx.beans.property.ObjectProperty<javafx.scene.Node> endDecorationProperty()
ObjectProperty wrapping the end decoration
Node.getEndDecoration(),
setEndDecoration(Node)public IAnchor getAnchor(int index)
index == 0, the end anchor for the last defined index.
Control anchorsByKeys will be returned for all indices in between.index - The index of the anchor to retrieve.protected int getAnchorIndex(AnchorKey anchorKey)
AnchorKey.protected AnchorKey getAnchorKey(int anchorIndex)
AnchorKey for the given anchor index, i.e. the
reverse of getAnchorIndex(AnchorKey).public javafx.collections.ObservableList<IAnchor> getAnchorsUnmodifiable()
List containing the IAnchors which are assigned
to this Connection in the order: start anchor, control point
anchorsByKeys, end anchor.List containing the IAnchors which are assigned
to this Connection.public Point getCenter()
Connection, which is
the middle control point position (in case the curveProperty consists of
an even number of segment) or the middle point of the middle segment.Connection.public IAnchor getControlAnchor(int index)
protected int getControlAnchorIndex(AnchorKey key)
AnchorKey, i.e.
0 for the first control anchor,
1 for the seconds, etc.key - The AnchorKey whose control anchor index is returned.AnchorKey.java.lang.IllegalArgumentException - when there currently is no control anchor
assigned to this Connection for the given
AnchorKey.protected AnchorKey getControlAnchorKey(int index)
AnchorKey for the given control anchor index.public java.util.List<IAnchor> getControlAnchors()
List containing the control anchorsByKeys currently assigned to this Connection.public Point getControlPoint(int index)
Point for the given control anchor index
within the coordinate system of this Connection which is
determined by querying the anchor position for the corresponding
control anchor, or null if no
control anchor is assigned for the given
index.index - The control anchor index for which to return the anchor
position.Point of this Connection, or
null.public java.util.List<Point> getControlPoints()
List containing the control Points of this
Connection.public javafx.scene.Node getCurve()
Node which displays the curveProperty geometry. Will
be a GeometryNode by default.Node which displays the curveProperty geometry.protected AnchorKey getEndAnchorKey()
AnchorKey for this Connection. An end
AnchorKey uses the curveProperty node as its
anchored and "end" as its role.AnchorKey for this Connection.public javafx.scene.Node getEndDecoration()
Node of this Connection, or
null.public Point getEndPoint()
Point of this Connection within its
coordinate system which is determined by querying the anchor position for
the end anchor key, or null when
no end anchor is assigned.Point of this Connection, or
null.public Point getEndPointHint()
null if no
hint is present.null if no
hint is present.public IConnectionInterpolator getInterpolator()
IConnectionInterpolator of this Connection.IConnectionInterpolator of this Connection.public Point getPoint(int index)
index == 0, the end point for the last defined index.
Control points will be returned for all indices in between.index - The index of the point to retrieve.getPointsUnmodifiable()public javafx.collections.ObservableList<Point> getPointsUnmodifiable()
Points constituting this Connection within
its coordinate system in the order: start point, control points, end
point.Points constituting this Connection.public IConnectionRouter getRouter()
IConnectionRouter of this Connection.IConnectionRouter of this Connection.public IAnchor getStartAnchor()
anchor, or
null.protected AnchorKey getStartAnchorKey()
AnchorKey for this Connection. A start
AnchorKey uses the curveProperty node as its
anchored and "start" as its role.AnchorKey for this Connection.public javafx.scene.Node getStartDecoration()
Node of this Connection, or
null.public Point getStartPoint()
Point of this Connection within its
coordinate system which is determined by querying the anchor position for
the start anchor key, or null
when no start anchor is assigned.Point of this Connection, or
null.public Point getStartPointHint()
null if no
hint is present.null if no
hint is present.public javafx.beans.property.ObjectProperty<IConnectionInterpolator> interpolatorProperty()
IConnectionInterpolator property.public boolean isConnected(IAnchor anchor)
true in case the anchor is bound to an anchorage
unequal to this connection.anchor - The anchor to testtrue if the anchor is connected, false
otherwise.public boolean isConnected(int index)
index - The index, referring to the start, end, or a control point.true if the anchor at the given index is connected,
false otherwise.public boolean isControlConnected(int index)
true if the currently assigned
control anchor for the given index is
bound to an anchorage. Otherwise returns false.index - The control anchor index of the control anchor to test for
connectedness.true if the currently assigned
control anchor for the given index
is bound to an anchorage, otherwise false.public boolean isEndConnected()
true if the currently assigned
end anchor is bound to an anchorage. Otherwise
returns false.true if the currently assigned
end anchor is bound to an anchorage,
otherwise false.public boolean isStartConnected()
true if the currently assigned
start anchor is bound to an anchorage.
Otherwise returns false.true if the currently assigned
start anchor is bound to an anchorage,
otherwise false.public double maxHeight(double width)
maxHeight in class javafx.scene.Nodepublic double maxWidth(double height)
maxWidth in class javafx.scene.Nodepublic double minHeight(double width)
minHeight in class javafx.scene.Grouppublic double minWidth(double height)
minWidth in class javafx.scene.Grouppublic javafx.beans.property.ReadOnlyListProperty<Point> pointsUnmodifiableProperty()
getPointsUnmodifiable()protected void reattachAnchorKeys(javafx.scene.Node oldAnchored,
javafx.scene.Node newAnchored)
AnchorKeys that are managed by this
Connection.oldAnchored - The previous anchored Node.newAnchored - The new anchored Node.protected void refresh()
refresh() are allowed to lead to
another refresh() call. However, when this method is called
reentrant, it returns immediately.
The process of refreshing a Connection is somewhat complicated as
it involves transforming points according to a transformation change,
removing volatile anchors, computing new parameters for its anchors,
inserting volatile anchors, computing a curve geometry, and updating the
visualization to that geometry. In addition, the position change
listeners registered at the individual
AbstractAnchor.positionsUnmodifiableProperty() need to be
disabled during refresh() to prevent
ConcurrentModificationException. The process can be described by
the following steps:
removeAnchor(AnchorKey, IAnchor), which updates
the points straight away.
DynamicAnchor.AnchoredReferencePoint
parameter value within the coordinate system of the connection.
Point from the coordinate system of
the connection to the coordinate system of the getCurve().
AnchorKeys for
which new parameters were provided or parameter values changed.
public void removeAllControlAnchors()
Connection.public void removeAllControlPoints()
Connection.public void removeControlAnchor(int index)
Connection.index - The index specifying which control anchor to remove.public void removeControlPoint(int index)
Connection.index - The control anchor index specifying which control point to
remove.public javafx.beans.property.ObjectProperty<IConnectionRouter> routerProperty()
IConnectionRouter of
this connection.getRouter(),
setRouter(IConnectionRouter)public void setAnchors(java.util.List<IAnchor> anchors)
Connection with the given
IAnchors, i.e. the first given IAnchor replaces the
currently assigned start anchor, the last given IAnchor replaces
the currently assigned end anchor, and the intermediate IAnchors
replace the currently assigned control anchorsByKeys.anchors - The new IAnchors for this Connection.java.lang.IllegalArgumentException - when less than 2 IAnchors are given.public void setControlAnchor(int index,
IAnchor anchor)
IAnchor.index - The control anchor index of the control anchor to replace.anchor - The new control IAnchor for that index.public void setControlAnchors(java.util.List<IAnchor> anchors)
anchors - The new control IAnchors for this Connection.public void setControlPoint(int index,
Point controlPoint)
StaticAnchor which yields the given Point.index - The control anchor index of the control anchor to replace.controlPoint - The new control Point for the respective index within
local coordinates of the Connection.public void setControlPoints(java.util.List<Point> controlPoints)
controlPoints - The new control Points for this Connection.public void setCurve(javafx.scene.Node curve)
Node that is used to render the connection.curve - The new curveProperty node.public void setEndAnchor(IAnchor anchor)
IAnchor of this Connection to the given
value.anchor - The new end IAnchor for this Connection.public void setEndDecoration(javafx.scene.Node decoration)
Node of this Connection to the
given value.decoration - The new end decoration Node for this
Connection.public void setEndPoint(Point endPoint)
endPoint - The new end Point within local coordinates of the
Connection.public void setEndPointHint(Point endPositionHint)
endPositionHint - The new end position hint.public void setInterpolator(IConnectionInterpolator interpolator)
interpolator - The new IConnectionInterpolator for this
Connection.public void setPoints(java.util.List<Point> points)
Connection with the given
IAnchors, i.e. the first given IAnchor replaces the
currently assigned start anchor, the last given IAnchor replaces
the currently assigned end anchor, and the intermediate IAnchors
replace the currently assigned control anchorsByKeys.points - The new Points for this Connection.java.lang.IllegalArgumentException - when less than 2 IAnchors are given.public void setRouter(IConnectionRouter router)
IConnectionRouter of this Connection to the
given value.router - The new IConnectionRouter for this Connection.public void setStartAnchor(IAnchor anchor)
IAnchor of this Connection to the given
value.anchor - The new start IAnchor for this Connection.public void setStartDecoration(javafx.scene.Node decoration)
Node of this Connection to the
given value.decoration - The new start decoration Node for this
Connection.public void setStartPoint(Point startPoint)
startPoint - The new start Point within local coordinates of the
Connection.public void setStartPointHint(Point startPositionHint)
startPositionHint - The new start position hint.public javafx.beans.property.ObjectProperty<javafx.scene.Node> startDecorationProperty()
ObjectProperty wrapping the start decoration
Node.getStartDecoration(),
setStartDecoration(Node)Copyright (c) 2014, 2016 itemis AG and others. All rights reserved.