package flare.vis.axis { import flare.animate.Transitioner; import flare.vis.Visualization; import flash.display.Sprite; import flash.geom.Rectangle; /** * Base class for representing metric data axes. */ public class Axes extends Sprite { /** The visualization the axes correspond to. */ protected var _vis:Visualization; /** The layout bounds of the axes. */ protected var _bounds:Rectangle; /** The visualization the axes correspond to. */ public function get visualization():Visualization { return _vis; } public function set visualization(v:Visualization):void { _vis = v; } /** The layout bounds of the axes. If this value is not directly set, * the layout bounds of the visualization are provided. */ public function get layoutBounds():Rectangle { if (_bounds != null) return _bounds; if (_vis != null) return _vis.bounds; return null; } public function set layoutBounds(b:Rectangle):void { _bounds = b; } /** * Update these axes, performing filtering and layout as needed. * @param trans a Transitioner for collecting value updates * @return the input transitioner */ public function update(trans:Transitioner=null):Transitioner { return trans; } } // end of class Axes }