Packageflare.vis.operator.layout
Classpublic class RadialTreeLayout
InheritanceRadialTreeLayout Inheritance Layout Inheritance Operator

Layout that places tree nodes in a radial layout, laying out depths of a tree along circles of increasing radius. This layout can be used for both node-link diagrams, where nodes are connected by edges, and for radial space-filling ("sunburst") diagrams. To generate space-filling layouts, nodes should have their shape property set to Shapes.WEDGE and the layout instance should have the useNodeSize property set to false.

The algorithm used is an adaptation of a technique by Ka-Ping Yee, Danyel Fisher, Rachna Dhamija, and Marti Hearst, published in the paper Animated Exploration of Dynamic Graphs with Radial Layout, InfoVis 2001. This algorithm computes a radial layout which factors in possible variation in sizes, and maintains both orientation and ordering constraints to facilitate smooth and understandable transitions between layout configurations.



Public Properties
 PropertyDefined by
  angleWidth : Number
The angular width of the layout (in radians, default is 2 pi).
RadialTreeLayout
  autoScale : Boolean
Flag indicating if the layout should automatically be scaled to fit within the layout bounds.
RadialTreeLayout
 Inheritedenabled : Boolean
Indicates if the operator is enabled or disabled.
Operator
 InheritedlayoutAnchor : Point
The layout anchor, used by some layout instances to place an initial item or determine a focal point.
Layout
 InheritedlayoutBounds : Rectangle
The layout bounds for the layout.
Layout
 InheritedlayoutRoot : DataSprite
The layout root, the root node for tree layouts.
Layout
 InheritedlayoutType : String = "null"
The type of layout and axes.
Layout
 Inheritedparameters : Object
Sets parameter values for this operator.
Operator
  radiusIncrement : Number
The radius increment between depth levels.
RadialTreeLayout
  sortAngles : Boolean
Flag determining if nodes should be sorted by angles to help maintain ordering across different spanning-tree configurations.
RadialTreeLayout
  startAngle : Number
The initial angle for the radial layout (in radians).
RadialTreeLayout
  useNodeSize : Boolean
Flag indicating if node's size property should be used to determine layout spacing.
RadialTreeLayout
 Inheritedvisualization : Visualization
The visualization processed by this operator.
Operator
Protected Properties
 PropertyDefined by
 Inherited_anchor : Point
Layout
 Inherited_setAnchor : Boolean = false
Layout
 Inherited_t : Transitioner = null
A transitioner for storing value updates.
Layout
 InheritedxyAxes : CartesianAxes
Returns the visualization's axes as a CartesianAxes instance.
Layout
Public Methods
 MethodDefined by
  
RadialTreeLayout(radius:Number, sortAngles:Boolean = true, autoScale:Boolean = true)
Creates a new RadialTreeLayout.
RadialTreeLayout
 Inherited
applyParameters(op:IOperator, params:Object):void
[static] Static method that applies parameter settings to an operator.
Operator
 Inherited
Strips all EdgeSprites in a visualization of any control points.
Layout
 Inherited
Hides the axes.
Layout
 Inherited
operate(t:Transitioner = null):void
Performs an operation over the contents of a visualization.
Layout
 Inherited
setup():void
Setup method invoked whenever this operator's visualization property is set.
Operator
 Inherited
Reveals the axes.
Layout
 Inherited
[static] Updates all edges to be straight lines.
Layout
Protected Methods
 MethodDefined by
 Inherited
autoAnchor():void
Automatically-generate an anchor point.
Layout
  
layout():void
Calculates the spatial layout of visualized items.
RadialTreeLayout
 Inherited
minAngle(a1:Number, a2:Number):Number
Returns an angle value that minimizes the angular distance between a reference angle and a target angle.
Layout
Public Constants
 ConstantDefined by
 InheritedCARTESIAN : String = "cartesian"
[static] Constant indicating Cartesian (x, y) coordinates.
Layout
  DEFAULT_RADIUS : int = 50
[static] The default radius increment between depth levels.
RadialTreeLayout
  PARAMS : String = "radialTreeLayoutParams"
[static] Property name for storing parameters for this layout.
RadialTreeLayout
 InheritedPOLAR : String = "polar"
[static] Constant indicating polar (radius, angle) coordinates.
Layout
Property detail
angleWidthproperty
angleWidth:Number  [read-write]

The angular width of the layout (in radians, default is 2 pi).

Implementation
    public function get angleWidth():Number
    public function set angleWidth(value:Number):void
autoScaleproperty 
autoScale:Boolean  [read-write]

Flag indicating if the layout should automatically be scaled to fit within the layout bounds.

Implementation
    public function get autoScale():Boolean
    public function set autoScale(value:Boolean):void
radiusIncrementproperty 
radiusIncrement:Number  [read-write]

The radius increment between depth levels.

Implementation
    public function get radiusIncrement():Number
    public function set radiusIncrement(value:Number):void
sortAnglesproperty 
sortAngles:Boolean  [read-write]

Flag determining if nodes should be sorted by angles to help maintain ordering across different spanning-tree configurations. This sorting is important for understandable transitions when using a radial layout of a general graph. However, it is unnecessary for tree structures and increases the running time of layout.

Implementation
    public function get sortAngles():Boolean
    public function set sortAngles(value:Boolean):void
startAngleproperty 
startAngle:Number  [read-write]

The initial angle for the radial layout (in radians).

Implementation
    public function get startAngle():Number
    public function set startAngle(value:Number):void
useNodeSizeproperty 
useNodeSize:Boolean  [read-write]

Flag indicating if node's size property should be used to determine layout spacing. If a space-filling radial layout is desired, this value must be false for the layout to be accurate.

Implementation
    public function get useNodeSize():Boolean
    public function set useNodeSize(value:Boolean):void
Constructor detail
RadialTreeLayout()constructor
public function RadialTreeLayout(radius:Number, sortAngles:Boolean = true, autoScale:Boolean = true)

Creates a new RadialTreeLayout.

Parameters
radius:Number — the radius increment between depth levels
 
sortAngles:Boolean (default = true) — flag indicating if nodes should be sorted by angle to maintain node ordering across spanning-tree configurations
 
autoScale:Boolean (default = true) — flag indicating if the layout should automatically be scaled to fit within the layout bounds
Method detail
layout()method
protected override function layout():void

Calculates the spatial layout of visualized items. Layout operators override this method with their layout implementations.

Constant detail
DEFAULT_RADIUSconstant
public static const DEFAULT_RADIUS:int = 50

The default radius increment between depth levels.

PARAMSconstant 
public static const PARAMS:String = "radialTreeLayoutParams"

Property name for storing parameters for this layout.