CircularLayout
A layout that places vertices in a circle, optionally with one at the center, and optionally centered around [width/2, height/2] (the default origin is 0,0).
Extends
Methods
begin()
begin(
dataSource,positionGetter,positionSetter,sizes,parameters):void
This is an abstract function that subclasses may implement if they wish. It will be called at the beginning of a layout.
Parameters
dataSource
The associated dataSource
positionGetter
(id) => PointXY
Function to get position for some element
positionSetter
(id, x, y) => void
Function to set position for some element. Updates current extents as it sets the position.
sizes
Record<string, Size>
Map of element sizes.
parameters
Parameters configured for the layout.
Returns
void
Overrides
end()
end(
dataSource,getPosition,setPosition,sizes,parameters):void
This is an abstract function that subclasses may implement if they wish. It will be called at the end of a layout.
Parameters
dataSource
The associated VisuallyJs model
getPosition
(id) => PointXY
setPosition
(id, x, y) => void
sizes
Record<string, Size>
Map of element sizes.
parameters
Parameters configured for the layout.
Returns
void
Overrides
step()
step(
dataSource,positionGetter,positionSetter,sizes,parameters):void
Step through the layout. For some layouts there is only a single step, but others continue stepping until some condition is met. Once the condition is met, the subclass must set this.done = true, or the layout will continue looping indefinitely.
Parameters
dataSource
The associated VisuallyJs model
positionGetter
(id) => PointXY
positionSetter
(id, x, y) => void
sizes
Record<string, Size>
parameters
Parameters configured for the layout.
Returns
void