C

LayoutAnchoringStage

LayoutAnchoringStage anchors the graph on an initial position based on either a single graph item or the alignment of the bounds of several items (but not the positions of the individual items).

Remarks

The absolute coordinates of the anchor point (the center of the union of the included graph items) are the same before and after invoking the core layout algorithm. However, the relative coordinates of the single items can be altered by the core layout. If you want to fix the absolute coordinates of multiple elements you have to use a suitable layout algorithm instead, e.g., the PartialLayout or OrganicLayout.

Default Values of Properties

NameDefault
coreLayoutnull

Members

Show:

Constructors

Creates a new LayoutAnchoringStage instance with an optional core layout algorithm.

Parameters

coreLayout?: ILayoutAlgorithm
The core layout algorithm.

Properties

Gets or sets the core ILayoutAlgorithm that is wrapped by this stage.
final

Property Value

the core layout routine

Default Value

The default value is: null
Gets or sets a value that determines whether this stage should do anything but execute the coreLayout.

By default, when constructed, stages should be enabled. Users may disable a stage's functionality by setting this property to false.

Stages that can guarantee that the graph will not change can choose to not even execute the coreLayout when disabled.

final

Methods

Implementation of the ILayoutAlgorithm interface and main entry point for the layout calculation.
This implementation checks the enabled state and when it's not enabled, will delegate to the coreLayout, directly. When the stage is enabled, all the work will be delegated to applyLayoutImpl, instead.
final

Parameters

graph: LayoutGraph
The graph to apply the layout to.
Delegates to the core layout algorithm and moves the graph to where the anchor point coincides with its initial location.
protected

Parameters

graph: LayoutGraph
the input graph
Calculates the anchor point based on the references provided.

The default implementation calculates the union of the provided references and returns its center.

This method is called by applyLayoutImpl to determine the point that will have the same coordinates before and after invoking the coreLayout. It may be overridden to introduce a custom policy for retrieving the anchor point.

protected

Parameters

references: IEnumerable<Rect>
The references for which to calculate the anchor point.

Return Value

Point
The calculated anchor point based on the references provided.
Returns an instance of LayoutData<TNode, TEdge, TNodeLabel, TEdgeLabel> that can be used to perform item-specific configurations for the LayoutAnchoringStage.
The generic type arguments of the created layout data are compatible with instances of LayoutGraph, but the layout data is not bound to a specific graph instance. Therefore, the created layout data still has to be passed as an argument of applyLayout in order to be applied.

Parameters

graph: LayoutGraph
the graph that determines the generic type arguments of the created layout data

Return Value

LayoutAnchoringStageData<LayoutNode, LayoutEdge, LayoutNodeLabel, LayoutEdgeLabel>
an instance of layout data that can be used to perform item-specific configurations for the given LayoutAnchoringStage.
Returns an instance of LayoutData<TNode, TEdge, TNodeLabel, TEdgeLabel> that can be used to perform item-specific configurations for the LayoutAnchoringStage.
The generic type arguments of the created layout data are compatible with instances of IGraph, but the layout data is not bound to a specific graph instance. Therefore, the created layout data still has to be passed as an argument of applyLayout in order to be applied.
This method is not available unless the module view-layout-bridge is loaded. Either load the module 'view-layout-bridge' explicitly or ensure that the LayoutExecutor type is available at runtime.

Parameters

graph?: IGraph
the graph that determines the generic type arguments of the created layout data

Return Value

LayoutAnchoringStageData<INode, IEdge, ILabel, ILabel>
an instance of layout data that can be used to perform item-specific configurations for the given LayoutAnchoringStage.
Gets the reference bounds for a node based on the specified LayoutAnchoringPolicy.
protected

Parameters

node: LayoutNode
The node for which to retrieve the reference bounds.
policy: LayoutAnchoringPolicy
The LayoutAnchoringPolicy for the node.

Return Value

Rect
The reference bounds for the node.
Gets the reference bounds for an edge based on the specified LayoutAnchoringPolicy.
protected

Parameters

edge: LayoutEdge
The edge for which to retrieve the reference bounds.
policy: LayoutAnchoringPolicy
The LayoutAnchoringPolicy for the edge.

Return Value

Rect
The reference bounds for the edge.
Gets the reference bounds for a node label based on the specified LayoutAnchoringPolicy.
protected

Parameters

label: LayoutNodeLabel
The node label for which to retrieve the reference bounds.
policy: LayoutAnchoringPolicy
The LayoutAnchoringPolicy for the node label.

Return Value

Rect
The reference bounds for the node label.
Gets the reference bounds for an edge label based on the specified LayoutAnchoringPolicy.
protected

Parameters

label: LayoutEdgeLabel
The edge label for which to retrieve the reference bounds.
policy: LayoutAnchoringPolicy
The LayoutAnchoringPolicy for the edge label.

Return Value

Rect
The reference bounds for the edge label.

Constants

All constants are filtered. Go to Filters.