Packagestarling.display
Classpublic class Image
InheritanceImage Inheritance Quad Inheritance Mesh Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object
Subclasses MovieClip

An Image is a quad with a texture mapped onto it.

Typically, the Image class will act as an equivalent of Flash's Bitmap class. Instead of BitmapData, Starling uses textures to represent the pixels of an image. To display a texture, you have to map it onto a quad - and that's what the Image class is for.

While the base class Quad already supports textures, the Image class adds some additional functionality.

First of all, it provides a convenient constructor that will automatically synchronize the size of the image with the displayed texture.

Furthermore, it adds support for a "Scale9" grid. This splits up the image into nine regions, the corners of which will always maintain their original size. The center region stretches in both directions to fill the remaining space; the side regions will stretch accordingly in either horizontal or vertical direction.

Finally, you can repeat a texture horizontally and vertically within the image's region, just like the tiles of a wallpaper. Use the tileGrid property to do that.

See also

starling.textures.Texture
Quad


Public Properties
 PropertyDefined By
 Inheritedalpha : Number
The opacity of the object.
DisplayObject
 Inheritedbase : DisplayObject
[read-only] The topmost object in the display tree the object is part of.
DisplayObject
 InheritedblendMode : String
The blend mode determines how the object is blended with the objects underneath.
DisplayObject
 Inheritedbounds : Rectangle
[read-only] The bounds of the object relative to the local coordinates of the parent.
DisplayObject
 Inheritedcolor : uint
Changes the color of all vertices to the same value.
Mesh
 InheriteddefaultStyle : Class
[static] The default style used for meshes if no specific style is provided.
Mesh
 InheriteddefaultStyleFactory : Function
[static] A factory method that is used to create the 'MeshStyle' for a mesh if no specific style is provided.
Mesh
 Inheritedfilter : FragmentFilter
The filter that is attached to the display object.
DisplayObject
 Inheritedheight : Number
The height of the object in pixels.
DisplayObject
 Inheritedis3D : Boolean
[read-only] Indicates if this object or any of its parents is a 'Sprite3D' object.
DisplayObject
 Inheritedmask : DisplayObject
The display object that acts as a mask for the current object.
DisplayObject
 InheritedmaskInverted : Boolean
Indicates if the masked region of this object is set to be inverted.
DisplayObject
 Inheritedname : String
The name of the display object (default: null).
DisplayObject
 InheritednumIndices : int
[read-only] The total number of indices referencing vertices.
Mesh
 InheritednumTriangles : int
[read-only] The total number of triangles in this mesh.
Mesh
 InheritednumVertices : int
[read-only] The total number of vertices in the mesh.
Mesh
 Inheritedparent : DisplayObjectContainer
[read-only] The display object container that contains this display object.
DisplayObject
 InheritedpivotX : Number
The x coordinate of the object's origin in its own coordinate space (default: 0).
DisplayObject
 InheritedpivotY : Number
The y coordinate of the object's origin in its own coordinate space (default: 0).
DisplayObject
 InheritedpixelSnapping : Boolean
Controls whether or not the instance snaps to the nearest pixel.
Mesh
 InheritedrequiresRedraw : Boolean
[read-only] Indicates if the object needs to be redrawn in the upcoming frame, i.e.
DisplayObject
 Inheritedroot : DisplayObject
[read-only] The root object the display object is connected to (i.e.
DisplayObject
 Inheritedrotation : Number
The rotation of the object in radians.
DisplayObject
 Inheritedscale : Number
Sets both 'scaleX' and 'scaleY' to the same value.
DisplayObject
  scale9Grid : Rectangle
The current scaling grid that is in effect.
Image
 InheritedscaleX : Number
The horizontal scale factor.
DisplayObject
 InheritedscaleY : Number
The vertical scale factor.
DisplayObject
 InheritedskewX : Number
The horizontal skew angle in radians.
DisplayObject
 InheritedskewY : Number
The vertical skew angle in radians.
DisplayObject
 Inheritedstage : Stage
[read-only] The stage the display object is connected to, or null if it is not connected to the stage.
DisplayObject
 Inheritedstyle : MeshStyle
The style that is used to render the mesh.
Mesh
 Inheritedtexture : Texture
[override] The texture that is mapped to the quad (or null, if there is none).
Quad
 InheritedtextureRepeat : Boolean
Indicates if pixels at the edges will be repeated or clamped.
Mesh
 InheritedtextureSmoothing : String
The smoothing filter that is used for the texture.
Mesh
  tileGrid : Rectangle
The current tiling grid that is in effect.
Image
 Inheritedtouchable : Boolean
Indicates if this object (and its children) will receive touch events.
DisplayObject
 InheritedtransformationMatrix : Matrix
The transformation matrix of the object relative to its parent.
DisplayObject
 InheritedtransformationMatrix3D : Matrix3D
[read-only] The 3D transformation matrix of the object relative to its parent.
DisplayObject
 InheriteduseHandCursor : Boolean
Indicates if the mouse cursor should transform into a hand while it's over the sprite.
DisplayObject
 InheritedvertexFormat : VertexDataFormat
[read-only] The format used to store the vertices.
Mesh
 Inheritedvisible : Boolean
The visibility of the object.
DisplayObject
 Inheritedwidth : Number
The width of the object in pixels.
DisplayObject
 Inheritedx : Number
The x coordinate of the object relative to the local coordinates of the parent.
DisplayObject
 Inheritedy : Number
The y coordinate of the object relative to the local coordinates of the parent.
DisplayObject
Protected Properties
 PropertyDefined By
 InheritedindexData : IndexData
[read-only] The index data describing how the vertices are interconnected.
Mesh
 InheritedvertexData : VertexData
[read-only] The vertex data describing all vertices of the mesh.
Mesh
Public Methods
 MethodDefined By
  
Image(texture:Texture)
Creates an image with a texture mapped onto it.
Image
 Inherited
addEventListener(type:String, listener:Function):void
[override] Registers an event listener at a certain object.
DisplayObject
 Inherited
alignPivot(horizontalAlign:String = center, verticalAlign:String = center):void
Moves the pivot point to a certain position within the local coordinate system of the object.
DisplayObject
  
automateSetupForTexture(texture:Texture, onAssign:Function, onRelease:Function = null):void
[static] Injects code that is called by all instances whenever the given texture is assigned or replaced.
Image
  
bindPivotPointToTexture(texture:Texture, pivotX:Number, pivotY:Number):void
[static] Binds the given pivot point to the given texture so that any image which displays the texture will automatically use the pivot point.
Image
  
bindScale9GridToTexture(texture:Texture, scale9Grid:Rectangle):void
[static] Binds the given scaling grid to the given texture so that any image which displays the texture will automatically use the grid.
Image
 Inherited
[static] Creates a new instance of the current default MeshStyle.
Mesh
 Inherited
dispatchEvent(event:Event):void
Dispatches an event to all objects that have registered listeners for its type.
EventDispatcher
 Inherited
dispatchEventWith(type:String, bubbles:Boolean = false, data:Object = null):void
Dispatches an event with the given parameters to all objects that have registered listeners for the given type.
EventDispatcher
 Inherited
dispose():void
[override] Disposes all resources of the display object.
Mesh
 Inherited
drawToBitmapData(out:BitmapData = null, color:uint = 0x0, alpha:Number = 0.0):BitmapData
Draws the object into a BitmapData object.
DisplayObject
 Inherited
fromPolygon(polygon:Polygon, style:MeshStyle = null):Mesh
[static] Creates a mesh from the specified polygon.
Mesh
 Inherited
[static] Creates a quad from the given texture.
Quad
 Inherited
getBounds(targetSpace:DisplayObject, out:Rectangle = null):Rectangle
[override] Returns a rectangle that completely encloses the object as it appears in another coordinate system.
Quad
 Inherited
getTexCoords(vertexID:int, out:Point = null):Point
Returns the texture coordinates of the vertex at the specified index.
Mesh
 Inherited
getTransformationMatrix(targetSpace:DisplayObject, out:Matrix = null):Matrix
Creates a matrix that represents the transformation from the local coordinate system to another.
DisplayObject
 Inherited
getTransformationMatrix3D(targetSpace:DisplayObject, out:Matrix3D = null):Matrix3D
Creates a matrix that represents the transformation from the local coordinate system to another.
DisplayObject
 Inherited
getVertexAlpha(vertexID:int):Number
Returns the alpha value of the vertex at the specified index.
Mesh
 Inherited
getVertexColor(vertexID:int):uint
Returns the RGB color of the vertex at the specified index.
Mesh
 Inherited
getVertexPosition(vertexID:int, out:Point = null):Point
The position of the vertex at the specified index, in the mesh's local coordinate system.
Mesh
 Inherited
globalToLocal(globalPoint:Point, out:Point = null):Point
Transforms a point from global (stage) coordinates to the local coordinate system.
DisplayObject
 Inherited
globalToLocal3D(globalPoint:Point, out:Vector3D = null):Vector3D
Transforms a point from global (stage) coordinates to the 3D local coordinate system.
DisplayObject
 Inherited
hasEventListener(type:String, listener:Function = null):Boolean
If called with one argument, figures out if there are any listeners registered for the given event type.
EventDispatcher
 Inherited
hitTest(localPoint:Point):DisplayObject
[override] Returns the object that is found topmost beneath a point in local coordinates, or nil if the test fails.
Quad
 Inherited
hitTestMask(localPoint:Point):Boolean
Checks if a certain point is inside the display object's mask.
DisplayObject
 Inherited
local3DToGlobal(localPoint:Vector3D, out:Point = null):Point
Transforms a 3D point from the local coordinate system to global (stage) coordinates.
DisplayObject
 Inherited
localToGlobal(localPoint:Point, out:Point = null):Point
Transforms a point from the local coordinate system to global (stage) coordinates.
DisplayObject
 Inherited
readjustSize(width:Number = -1, height:Number = -1):void
Readjusts the dimensions of the quad.
Quad
 Inherited
removeEventListener(type:String, listener:Function):void
[override] Removes an event listener from the object.
DisplayObject
 Inherited
removeEventListeners(type:String = null):void
[override] Removes all event listeners with a certain type, or all of them if type is null.
DisplayObject
 Inherited
removeFromParent(dispose:Boolean = false):void
Removes the object from its parent, if it has one, and optionally disposes it.
DisplayObject
  
removeSetupForTexture(texture:Texture, onAssign:Function, onRelease:Function = null):void
[static] Removes specific setup functions for the given texture.
Image
 Inherited
render(painter:Painter):void
[override] Renders the display object with the help of a painter object.
Mesh
  
[static] Removes all custom setup functions for the given texture, including those created via 'bindScale9GridToTexture' and 'bindPivotPointToTexture'.
Image
 Inherited
This method is called whenever the mesh's index data was changed.
Mesh
 Inherited
Forces the object to be redrawn in the next frame.
DisplayObject
 Inherited
setStyle(meshStyle:MeshStyle = null, mergeWithPredecessor:Boolean = true):void
Sets the style that is used to render the mesh.
Mesh
 Inherited
setTexCoords(vertexID:int, u:Number, v:Number):void
Sets the texture coordinates of the vertex at the specified index to the given values.
Mesh
 Inherited
setVertexAlpha(vertexID:int, alpha:Number):void
Sets the alpha value of the vertex at the specified index to a certain value.
Mesh
 Inherited
setVertexColor(vertexID:int, color:uint):void
Sets the RGB color of the vertex at the specified index to a certain value.
Mesh
 Inherited
This method is called whenever the mesh's vertex data was changed.
Mesh
 Inherited
setVertexPosition(vertexID:int, x:Number, y:Number):void
Mesh
Protected Methods
 MethodDefined By
 Inherited
Sets up vertex- and index-data according to the current settings.
Quad
Events
 Event Summary Defined By
 InheritedDispatched when an object is added to a parent.DisplayObject
 InheritedDispatched when an object is connected to the stage (directly or indirectly).DisplayObject
 InheritedDispatched once every frame on every object that is connected to the stage.DisplayObject
 InheritedDispatched when a key on the keyboard is pressed.DisplayObject
 InheritedDispatched when a key on the keyboard is released.DisplayObject
 InheritedDispatched when an object is removed from its parent.DisplayObject
 InheritedDispatched when an object is removed from the stage and won't be rendered any longer.DisplayObject
 InheritedDispatched when an object is touched.DisplayObject
Property Detail
scale9Gridproperty
scale9Grid:Rectangle

The current scaling grid that is in effect. If set to null, the image is scaled just like any other display object; assigning a rectangle will divide the image into a grid of nine regions, based on the center rectangle. The four corners of this grid will always maintain their original size; the other regions will stretch (horizontally, vertically, or both) to fill the complete area.

Notes:

The default value is null.


Implementation
    public function get scale9Grid():Rectangle
    public function set scale9Grid(value:Rectangle):void
tileGridproperty 
tileGrid:Rectangle

The current tiling grid that is in effect. If set to null, the image is scaled just like any other display object; assigning a rectangle will divide the image into a grid displaying the current texture in each and every cell. The assigned rectangle points to the bounds of one cell; all other elements will be calculated accordingly. A zero or negative value for the rectangle's width or height will be replaced with the actual texture size. Thus, you can make a 2x2 grid simply like this:

          var image:Image = new Image(texture);
          image.tileGrid = new Rectangle();
          image.scale = 2;

Notes:

The default value is null.


Implementation
    public function get tileGrid():Rectangle
    public function set tileGrid(value:Rectangle):void
Constructor Detail
Image()Constructor
public function Image(texture:Texture)

Creates an image with a texture mapped onto it.

Parameters
texture:Texture
Method Detail
automateSetupForTexture()method
public static function automateSetupForTexture(texture:Texture, onAssign:Function, onRelease:Function = null):void

Injects code that is called by all instances whenever the given texture is assigned or replaced. The new functions will be executed after any existing ones.

Parameters

texture:Texture — Assignment of this texture instance will lead to the following callback(s) being executed.
 
onAssign:Function — Called when the texture is assigned. Receives one parameter of type 'Image'.
 
onRelease:Function (default = null) — Called when the texture is replaced. Receives one parameter of type 'Image'. (Optional.)

bindPivotPointToTexture()method 
public static function bindPivotPointToTexture(texture:Texture, pivotX:Number, pivotY:Number):void

Binds the given pivot point to the given texture so that any image which displays the texture will automatically use the pivot point.

Parameters

texture:Texture
 
pivotX:Number
 
pivotY:Number

bindScale9GridToTexture()method 
public static function bindScale9GridToTexture(texture:Texture, scale9Grid:Rectangle):void

Binds the given scaling grid to the given texture so that any image which displays the texture will automatically use the grid.

Parameters

texture:Texture
 
scale9Grid:Rectangle

removeSetupForTexture()method 
public static function removeSetupForTexture(texture:Texture, onAssign:Function, onRelease:Function = null):void

Removes specific setup functions for the given texture.

Parameters

texture:Texture
 
onAssign:Function
 
onRelease:Function (default = null)

resetSetupForTexture()method 
public static function resetSetupForTexture(texture:Texture):void

Removes all custom setup functions for the given texture, including those created via 'bindScale9GridToTexture' and 'bindPivotPointToTexture'.

Parameters

texture:Texture