ActionScript® 3.0 Reference for the Adobe® Flash® Platform
Home  |  Show Packages and Classes List |  Packages  |  Classes  |  What's New  |  Index  |  Appendixes
mx.core 

BitmapAsset  - AS3 Flex

Packagemx.core
Classpublic class BitmapAsset
InheritanceBitmapAsset Inheritance FlexBitmap Inheritance Bitmap Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object
Implements IFlexAsset, IFlexDisplayObject, ILayoutDirectionElement

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

BitmapAsset is a subclass of the flash.display.Bitmap class which represents bitmap images that you embed in a Flex application. It implements the IFlexDisplayObject interface, which makes it possible for an embedded bitmap image to be displayed in an Image control, or to be used as a container background or a component skin.

The bitmap image that you're embedding can be in a JPEG, GIF, or PNG file. You can also embed a bitmap symbol that is in a SWF file produced by Flash. In each of these cases, the MXML compiler autogenerates a class that extends BitmapAsset to represent the embedded bitmap image.

You don't generally have to use the BitmapAsset class directly when you write a Flex application. For example, you can embed a GIF file and display the image in an Image control by writing the gollowing:

  <mx:Image id="logo" source="@Embed(source='Logo.gif')"/>

or use it as the application's background image in CSS syntax by writing

  <fx:Style>
      @namespace mx "library://ns.adobe.com/flex/mx"
      mx|Application {
          backgroundImage: Embed(source="Logo.gif")
      }
  <fx:Style/>

without having to understand that the MXML compiler has created a subclass of BitmapAsset for you.

However, it may be useful to understand what is happening at the ActionScript level. To embed a bitmap image in ActionScript, you declare a variable of type Class, and put [Embed] metadata on it. For example, you embed a GIF file like this:

  [Bindable]
  [Embed(source="Logo.gif")]
  private var logoClass:Class;

The MXML compiler sees the .gif extension, transcodes the GIF data into the bitmap format that the player uses, autogenerates a subclass of the BitmapAsset class, and sets your variable to be a reference to this autogenerated class. You can then use this class reference to create instances of the BitmapAsset using the new operator, and you can use APIs of the BitmapAsset class on them:

  var logo:BitmapAsset = BitmapAsset(new logoClass());
  logo.bitmapData.noise(4);

However, you rarely need to create BitmapAsset instances yourself because image-related properties and styles can simply be set to an image-producing class, and components will create image instances as necessary. For example, to display this image in an Image control, you can set the Image's source property to logoClass. In MXML you could do this as follows:

  <mx:Image id="logo" source="{logoClass}"/>



Public Properties
 PropertyDefined By
 InheritedaccessibilityProperties : AccessibilityProperties
The current accessibility options for this display object.
DisplayObject
 Inheritedalpha : Number
Indicates the alpha transparency value of the object specified.
DisplayObject
 InheritedbitmapData : BitmapData
The BitmapData object being referenced.
Bitmap
 InheritedblendMode : String
A value from the BlendMode class that specifies which blend mode to use.
DisplayObject
 InheritedblendShader : Shader
[write-only] Sets a shader that is used for blending the foreground and background.
DisplayObject
 InheritedcacheAsBitmap : Boolean
If set to true, Flash runtimes cache an internal bitmap representation of the display object.
DisplayObject
 Inherited    cacheAsBitmapMatrix : Matrix
If non-null, this Matrix object defines how a display object is rendered when cacheAsBitmap is set to true.
DisplayObject
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
 Inheritedfilters : Array
An indexed array that contains each filter object currently associated with the display object.
DisplayObject
 Inheritedheight : Number
Indicates the height of the display object, in pixels.
DisplayObject
  layoutDirection : String
Specifies the desired layout direction for an element: one of LayoutDirection.LTR (left to right), LayoutDirection.RTL (right to left), or null (inherit).
BitmapAsset
 InheritedloaderInfo : LoaderInfo
[read-only] Returns a LoaderInfo object containing information about loading the file to which this display object belongs.
DisplayObject
 Inheritedmask : DisplayObject
The calling display object is masked by the specified mask object.
DisplayObject
  measuredHeight : Number
[read-only] The measured height of this object.
BitmapAsset
  measuredWidth : Number
[read-only] The measured width of this object.
BitmapAsset
 InheritedmetaData : Object
Obtains the meta data object of the DisplayObject instance if meta data was stored alongside the the instance of this DisplayObject in the SWF file through a PlaceObject4 tag.
DisplayObject
 InheritedmouseX : Number
[read-only] Indicates the x coordinate of the mouse or user input device position, in pixels.
DisplayObject
 InheritedmouseY : Number
[read-only] Indicates the y coordinate of the mouse or user input device position, in pixels.
DisplayObject
 Inheritedname : String
Indicates the instance name of the DisplayObject.
DisplayObject
 InheritedopaqueBackground : Object
Specifies whether the display object is opaque with a certain background color.
DisplayObject
 Inheritedparent : DisplayObjectContainer
[read-only] Indicates the DisplayObjectContainer object that contains this display object.
DisplayObject
 InheritedpixelSnapping : String
Controls whether or not the Bitmap object is snapped to the nearest pixel.
Bitmap
 Inheritedroot : DisplayObject
[read-only] For a display object in a loaded SWF file, the root property is the top-most display object in the portion of the display list's tree structure represented by that SWF file.
DisplayObject
 Inheritedrotation : Number
Indicates the rotation of the DisplayObject instance, in degrees, from its original orientation.
DisplayObject
 InheritedrotationX : Number
Indicates the x-axis rotation of the DisplayObject instance, in degrees, from its original orientation relative to the 3D parent container.
DisplayObject
 InheritedrotationY : Number
Indicates the y-axis rotation of the DisplayObject instance, in degrees, from its original orientation relative to the 3D parent container.
DisplayObject
 InheritedrotationZ : Number
Indicates the z-axis rotation of the DisplayObject instance, in degrees, from its original orientation relative to the 3D parent container.
DisplayObject
 Inheritedscale9Grid : Rectangle
The current scaling grid that is in effect.
DisplayObject
 InheritedscaleX : Number
Indicates the horizontal scale (percentage) of the object as applied from the registration point.
DisplayObject
 InheritedscaleY : Number
Indicates the vertical scale (percentage) of an object as applied from the registration point of the object.
DisplayObject
 InheritedscaleZ : Number
Indicates the depth scale (percentage) of an object as applied from the registration point of the object.
DisplayObject
 InheritedscrollRect : Rectangle
The scroll rectangle bounds of the display object.
DisplayObject
 Inheritedsmoothing : Boolean
Controls whether or not the bitmap is smoothed when scaled.
Bitmap
 Inheritedstage : Stage
[read-only] The Stage of the display object.
DisplayObject
 Inheritedtransform : flash.geom:Transform
An object with properties pertaining to a display object's matrix, color transform, and pixel bounds.
DisplayObject
 Inheritedvisible : Boolean
Whether or not the display object is visible.
DisplayObject
 Inheritedwidth : Number
Indicates the width of the display object, in pixels.
DisplayObject
 Inheritedx : Number
Indicates the x coordinate of the DisplayObject instance relative to the local coordinates of the parent DisplayObjectContainer.
DisplayObject
 Inheritedy : Number
Indicates the y coordinate of the DisplayObject instance relative to the local coordinates of the parent DisplayObjectContainer.
DisplayObject
 Inheritedz : Number
Indicates the z coordinate position along the z-axis of the DisplayObject instance relative to the 3D parent container.
DisplayObject
Public Methods
 MethodDefined By
  
BitmapAsset(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)
Constructor.
BitmapAsset
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event.
EventDispatcher
 Inherited
Dispatches an event into the event flow.
EventDispatcher
 Inherited
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
Returns a rectangle that defines the area of the display object relative to the coordinate system of the targetCoordinateSpace object.
DisplayObject
 Inherited
getRect(targetCoordinateSpace:DisplayObject):Rectangle
Returns a rectangle that defines the boundary of the display object, based on the coordinate system defined by the targetCoordinateSpace parameter, excluding any strokes on shapes.
DisplayObject
 Inherited
Converts the point object from the Stage (global) coordinates to the display object's (local) coordinates.
DisplayObject
 Inherited
Converts a two-dimensional point from the Stage (global) coordinates to a three-dimensional display object's (local) coordinates.
DisplayObject
 Inherited
Checks whether the EventDispatcher object has any listeners registered for a specific type of event.
EventDispatcher
 Inherited
Indicates whether an object has a specified property defined.
Object
 Inherited
Evaluates the bounding box of the display object to see if it overlaps or intersects with the bounding box of the obj display object.
DisplayObject
 Inherited
hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
Evaluates the display object to see if it overlaps or intersects with the point specified by the x and y parameters.
DisplayObject
  
An element must call this method when its layoutDirection changes or when its parent's layoutDirection changes.
BitmapAsset
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Converts a three-dimensional point of the three-dimensional display object's (local) coordinates to a two-dimensional point in the Stage (global) coordinates.
DisplayObject
 Inherited
Converts the point object from the display object's (local) coordinates to the Stage (global) coordinates.
DisplayObject
  
Moves this object to the specified x and y coordinates.
BitmapAsset
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Removes a listener from the EventDispatcher object.
EventDispatcher
  
setActualSize(newWidth:Number, newHeight:Number):void
Sets the actual size of this object.
BitmapAsset
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
[override] Returns a string indicating the location of this object within the hierarchy of DisplayObjects in the Application.
FlexBitmap
 Inherited
Returns the primitive value of the specified object.
Object
 Inherited
Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type.
EventDispatcher
Events
 Event Summary Defined By
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active.EventDispatcher
 InheritedDispatched when a display object is added to the display list.DisplayObject
 InheritedDispatched when a display object is added to the on stage display list, either directly or through the addition of a sub tree in which the display object is contained.DisplayObject
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive.EventDispatcher
 Inherited[broadcast event] Dispatched when the playhead is entering a new frame.DisplayObject
 Inherited[broadcast event] Dispatched when the playhead is exiting the current frame.DisplayObject
 Inherited[broadcast event] Dispatched after the constructors of frame display objects have run but before frame scripts have run.DisplayObject
 InheritedDispatched when a display object is about to be removed from the display list.DisplayObject
 InheritedDispatched when a display object is about to be removed from the display list, either directly or through the removal of a sub tree in which the display object is contained.DisplayObject
 Inherited[broadcast event] Dispatched when the display list is about to be updated and rendered.DisplayObject
Property Detail

layoutDirection

property
layoutDirection:String

Language Version: ActionScript 3.0
Product Version: Flex 4.1
Runtime Versions: Flash Player 10, AIR 1.5

Specifies the desired layout direction for an element: one of LayoutDirection.LTR (left to right), LayoutDirection.RTL (right to left), or null (inherit). This property is typically backed by an inheriting style. If null, the layoutDirection style will be set to undefined. Classes like GraphicElement, which implement ILayoutDirectionElement but do not support styles, must additionally support a null value for this property which means the layoutDirection must be inherited from its parent.



Implementation
    public function get layoutDirection():String
    public function set layoutDirection(value:String):void

measuredHeight

property 
measuredHeight:Number  [read-only]

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

The measured height of this object.

This is typically hard-coded for graphical skins because this number is simply the number of pixels in the graphic. For code skins, it can also be hard-coded if you expect to be drawn at a certain size. If your size can change based on properties, you may want to also be an ILayoutManagerClient so a measure() method will be called at an appropriate time, giving you an opportunity to compute a measuredHeight.



Implementation
    public function get measuredHeight():Number

measuredWidth

property 
measuredWidth:Number  [read-only]

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

The measured width of this object.

This is typically hard-coded for graphical skins because this number is simply the number of pixels in the graphic. For code skins, it can also be hard-coded if you expect to be drawn at a certain size. If your size can change based on properties, you may want to also be an ILayoutManagerClient so a measure() method will be called at an appropriate time, giving you an opportunity to compute a measuredHeight.



Implementation
    public function get measuredWidth():Number
Constructor Detail

BitmapAsset

()Constructor
public function BitmapAsset(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

Constructor.

Parameters
bitmapData:BitmapData (default = null) — The data for the bitmap image.
 
pixelSnapping:String (default = "auto") — Whether or not the bitmap is snapped to the nearest pixel.
 
smoothing:Boolean (default = false) — Whether or not the bitmap is smoothed when scaled.
Method Detail

invalidateLayoutDirection

()method
public function invalidateLayoutDirection():void

Language Version: ActionScript 3.0
Product Version: Flex 4.1
Runtime Versions: Flash Player 10, AIR 1.5

An element must call this method when its layoutDirection changes or when its parent's layoutDirection changes. If they differ, this method is responsible for mirroring the element’s contents and for updating the element’s post-layout transform so that descendants inherit a mirrored coordinate system. IVisualElements typically implement mirroring by using postLayoutTransformOffsets to scale the X axis by -1 and to translate the x coordinate of the origin by the element's width. The net effect of this "mirror" transform is to reverse the direction in which the X axis increases without changing the element's location relative to its parent's origin.

move

()method 
public function move(x:Number, y:Number):void

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

Moves this object to the specified x and y coordinates.

Parameters

x:Number — The new x-position for this object.
 
y:Number — The new y-position for this object.

setActualSize

()method 
public function setActualSize(newWidth:Number, newHeight:Number):void

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

Sets the actual size of this object.

This method is mainly for use in implementing the updateDisplayList() method, which is where you compute this object's actual size based on its explicit size, parent-relative (percent) size, and measured size. You then apply this actual size to the object by calling setActualSize().

In other situations, you should be setting properties such as width, height, percentWidth, or percentHeight rather than calling this method.

Parameters

newWidth:Number — The new width for this object.
 
newHeight:Number — The new height for this object.