Packagecom.gestureworks.cml.layouts
Classpublic class FanLayout
InheritanceFanLayout Inheritance Layout Inheritance CMLObject Inheritance flash.events.EventDispatcher

The FanLayout positions the corners of the container's objects in the same location and rotates them individually around the corner.

        var topLeftFan:Container = getImageContainer();
        topLeftFan.applyLayout(getFanLayout());
        addChild(topLeftFan);     
        
        
        function getImageContainer():Container
        {
            var container:Container = new Container();
            container.addChild(getImageElement("plane.jpg));            
            container.addChild(getImageElement("plane.jpg));            
            container.addChild(getImageElement("plane.jpg));            
            container.addChild(getImageElement("plane.jpg));            
            container.addChild(getImageElement("plane.jpg));            
            container.addChild(getImageElement("plane.jpg));                        
            container.addChild(getImageElement("plane.jpg));                        
            container.addChild(getImageElement("plane.jpg));                    
            return container;
        }

        
        function getFanLayout(angle:Number = 10, type:String = "topLeftOrigin"):FanLayout
        {
            var fanLayout:FanLayout = new FanLayout();
            fanLayout.angle = angle;
            fanLayout.type = type;
            fanLayout.tween = true;
            fanLayout.tweenTime = 1500;
            return fanLayout;
        }
        
        
        function getImageElement(source:String):Image
        {
            var img:Image = new Image();
            img.open(source);
            img.width = 250;
            img.height = 150;
            img.resample = true;
            return img;
        }            
        
     

See also

GridLayout
ListLayout
PileLayout
PointLayout
RandomLayout
com.gestureworks.cml.layouts.Layout
com.gestureworks.cml.elements.Container


Public Properties
 PropertyDefined By
 Inheritedalpha : Number
Specifies the alpha value of the display objects in the layout
Layout
  angle : Number
The angle of rotation
FanLayout
 InheritedcacheTransforms : Boolean
Flag indicating the childTransformations are to be cached and reapplied for convenience.
Layout
 InheritedcenterColumn : Boolean
Flag indicating the alignment of the objects' centers with the center of the column.
Layout
 InheritedcenterRow : Boolean
Flag indicating the alignment of the objects' centers with the center of the row.
Layout
 InheritedchildList : ChildList
Returns the object's childList.
CMLObject
 InheritedcmlIndex : int
Returns the index created by the CML parser.
CMLObject
 InheritedcontinuousTransform : Boolean
Flag indicating the application of a transform relative to the current transform.
Layout
 Inheritedeasing : *
Specifies the easing equation.
Layout
 Inheritedexclusions : Array
An array of objects to exclude from the layout application
Layout
 Inheritedid : String
Returns the object's id.
CMLObject
 InheritedmarginX : Number
Layout
 InheritedmarginY : Number
Spacing added to the height of an object
Layout
 InheritedonComplete : Function
Function to call on layout complete
Layout
 InheritedonCompleteParams : Array
Parameters for onComplete function
Layout
 InheritedonUpdate : Function
Function to call on layout update
Layout
 InheritedonUpdateParams : Array
Parameters for onUpdate function
Layout
 InheritedoriginX : Number
Starting x coordinate of layout relative to the container
Layout
 Inherited_originY : Number = 0
Layout
 InheritedoriginY : Number
Starting y coordinate of layout relative to the container
Layout
  rotation : Number
[override] Since this is a rotation dependent layout, override the rotation mutator to prevent conflicts.
FanLayout
 Inheritedscale : Number
Specifies the scale value of the display objects in the layout
Layout
 InheritedspacingX : Number
Horizontal distance between the origins of two objects
Layout
 InheritedspacingY : Number
Vertical distance between the origins of two objects
Layout
 Inheritedstate : Array
CMLObject
 Inheritedtween : Boolean
Flag indicating the display objects will animate to their layout positions.
Layout
 InheritedtweenTime : Number
The time(ms) the display objects will take to move into positions
Layout
 Inheritedtype : String
Specifies a layout subtype
Layout
 InheriteduseMargins : Boolean
Flag indicating the use of margins or spacing
Layout
Protected Properties
 PropertyDefined By
 InheritedchildTransformations : Array
Layout
Public Methods
 MethodDefined By
  
Constructor
FanLayout
 Inherited
clone():*
Clone method.
CMLObject
  
dispose():void
[override] Disposal function
FanLayout
 Inherited
init():void
Initialization method.
CMLObject
 Inherited
killTween(child:* = null):void
Kills the tweening of the provided child.
Layout
  
layout(container:DisplayObjectContainer):void
[override] Positions and rotates the objects based on the type
FanLayout
 Inherited
parseCML(cml:XMLList):XMLList
Internal CML parse method.
CMLObject
 Inherited
postparseCML(cml:XMLList):void
Abstract method allows the setting of a postparse CML routine.
CMLObject
 Inherited
updateProperties(state:* = 0):void
Updates properties from state.
CMLObject
Protected Methods
 MethodDefined By
 Inherited
degreesToRadians(degrees:Number):Number
[static] Converts degrees to radians
Layout
 Inherited
getMatrixObj(mtx:Matrix):Object
[static] Converts transformation matrix to TweenMax syntax
Layout
 Inherited
getMaxHeight(c:DisplayObjectContainer):Number
[static] Returns the max height of the container's children
Layout
 Inherited
getMaxWidth(c:DisplayObjectContainer):Number
[static] Returns the max width of the container's children
Layout
 Inherited
pointRotateMatrix(angle:Number, aroundX:Number, aroundY:Number, m:Matrix = null):Matrix
[static] Returns a matrix rotated around a specific point at a specific angle
Layout
 Inherited
randomMinMax(min:Number, max:Number):Number
[static] Generates a reandom number between min and max
Layout
 Inherited
rotateAroundPoint(obj:*, angle:Number, aroundX:Number, aroundY:Number):void
[static] Rotates an object around a spcecific point at a specific angle of rotation
Layout
 Inherited
rotateTransform(m:Matrix, rot:Number):void
Apply a rotation to the provided transformation matrix
Layout
 Inherited
scaleTransform(m:Matrix, s:Number):void
Apply a scale to the provided transformation matrix
Layout
 Inherited
translateTransform(m:Matrix, x:Number, y:Number):void
Apply a translation to the provided transformation matrix
Layout
 Inherited
validObject(obj:*):Boolean
Determines if an object meets the criteria to be included in the layout
Layout
Property Detail
angleproperty
angle:Number

The angle of rotation

The default value is 5.


Implementation
    public function get angle():Number
    public function set angle(value:Number):void
rotationproperty 
rotation:Number[override]

Since this is a rotation dependent layout, override the rotation mutator to prevent conflicts.


Implementation
    public function get rotation():Number
    public function set rotation(value:Number):void
Constructor Detail
FanLayout()Constructor
public function FanLayout()

Constructor

Method Detail
dispose()method
override public function dispose():void

Disposal function

layout()method 
override public function layout(container:DisplayObjectContainer):void

Positions and rotates the objects based on the type

Parameters

container:DisplayObjectContainer