Class: AnimatedSprite

Tiny. AnimatedSprite

An AnimatedSprite is a simple way to display an animation depicted by a list of textures.

 let alienImages = ['image_sequence_01.png','image_sequence_02.png','image_sequence_03.png','image_sequence_04.png'];
 let textureArray = [];

 for (let i=0; i < 4; i++) {
   let texture = Tiny.Texture.fromImage(alienImages[i]);
   textureArray.push(texture);
   // you can also set the duration for any frame, as follows:
   // textureArray.push({
   //   texture,
   //   time: 4 * 10
   // });
 };

 let mc = new Tiny.AnimatedSprite(textureArray);

new Tiny.AnimatedSprite(textures, autoUpdate)

Name Type Default Description
textures Array.<Tiny.Texture> | Array.<FrameObject>

an array of Tiny.Texture or frame objects that make up the animation

autoUpdate boolean true optional

Whether use Tiny.ticker.shared to auto update animation time.

Extends

Members

actionsarray.<Tiny.Action>

该对象上绑定的所有 Action

alphanumber

The opacity of the object.

The anchor sets the origin point of the texture.
The default is 0,0 or taken from the Texture passed to the constructor.
Setting the texture at a later point of time does not change the anchor.

0,0 means the texture's origin is the top left, 0.5,0.5 is the center, 1,1 the bottom right corner.

animationSpeednumber

The speed that the AnimatedSprite will play at. Higher is faster, lower is slower

Default Value:
  • 1

blendModenumber

The blend mode to be applied to the sprite. Apply a value of Tiny.BLEND_MODES.NORMAL to reset the blend mode.

Default Value:
  • Tiny.BLEND_MODES.NORMAL
See:

buttonModeboolean

If enabled, the mouse cursor use the pointer behavior when hovered over the displayObject if it is interactive
Setting this changes the 'cursor' property to 'pointer'.

Example
const sprite = new Tiny.Sprite(texture);
sprite.interactive = true;
sprite.buttonMode = true;

readonlychildrenarray.<Tiny.DisplayObject>

The array of children of this container.

readonlycurrentFramenumber

The AnimatedSprites current frame index

cursorstring

This defines what cursor mode is used when the mouse cursor is hovered over the displayObject.

See:
Example
const sprite = new Tiny.Sprite(texture);
sprite.interactive = true;
sprite.cursor = 'wait';

filterAreaTiny.Rectangle

The area the filter is applied to. This is used as more of an optimisation rather than figuring out the dimensions of the displayObject each frame you can set this rectangle

Also works as an interaction mask

filtersarray.<Tiny.Filter>

Sets the filters for the displayObject.

  • IMPORTANT: This is a webGL only feature and will be ignored by the canvas renderer.
    To remove filters simply set this property to 'null'

heightnumber

The height of the sprite, setting this will actually modify the scale to achieve the value set

Interaction shape. Children will be hit first, then this shape will be checked.
Setting this will cause this shape to be checked in hit tests rather than the displayObject's bounds.

Example
const sprite = new Tiny.Sprite(texture);
sprite.interactive = true;
sprite.hitArea = new Tiny.Rectangle(0, 0, 100, 100);

interactiveboolean

Enable interaction events for the DisplayObject. Touch, pointer and mouse events will not be emitted unless interactive is set to true.

Example
const sprite = new Tiny.Sprite(texture);
sprite.interactive = true;
sprite.on('tap', (event) => {
   //handle event
});

interactiveChildrenboolean

Determines if the children to the displayObject can be clicked/touched
Setting this to false allows Tiny to bypass a recursive hitTest function

readonlylocalTransformTiny.Matrix

Current transform of the object based on local factors: position, scale, other stuff

loopboolean

Whether or not the animate sprite repeats after playing.

Default Value:
  • true

Sets a mask for the displayObject. A mask is an object that limits the visibility of an object to the shape of the mask applied to it. In Tiny a regular mask must be a Tiny.Graphics or a Tiny.Sprite object. This allows for much faster masking in canvas as it utilises shape clipping. To remove a mask, set this property to null.

namestring

The instance name of the object.

onCompletefunction

Function to call when a AnimatedSprite finishes playing

onFrameChangefunction

Function to call when a AnimatedSprite changes which texture is being rendered

onLoopfunction

Function to call when 'loop' is true, and an AnimatedSprite is played and loops around to start again

Version:
  • 1.2.0

readonlyparentTiny.Container

The display object container that contains this display object.

The pivot point of the displayObject that it rotates around

readonlyplayingboolean

Indicates if the AnimatedSprite is currently playing

pluginNamestring

Plugin that is responsible for rendering this element.
Allows to customize the rendering process without overriding '_renderWebGL' & '_renderCanvas' methods.

Default Value:
  • 'sprite'

The coordinate of the object relative to the local coordinates of the parent.

renderableboolean

Can this object be rendered, if false the object will not be drawn but the updateTransform methods will still be called.

Only affects recursive calls from parent. You can ask for bounds manually

rotationnumber

The rotation of the object in radians.

The scale factor of the object.

shaderTiny.Filter Tiny.Shader

The shader that will be used to render the sprite. Set to null to remove a current shader.

The skew factor for the object in radians.

textureTiny.Texture

The texture that the sprite is using

texturesArray.<Tiny.Texture>

The array of textures used for this AnimatedSprite

tintnumber

The tint applied to the sprite. This is a hex value.
A value of 0xFFFFFF will remove any tint effect.

Default Value:
  • 0xFFFFFF

readonlytotalFramesnumber

totalFrames is the total number of frames in the AnimatedSprite. This is the same as number of textures assigned to the AnimatedSprite.

Default Value:
  • 0

World transform and local transform of this object.
This will become read-only later, please do not assign anything there unless you know what are you doing

updateAnchorboolean

Update anchor to Texture's defaultAnchor when frame changes.

Useful with sprite sheet animations created with tools.
Changing anchor for each frame allows to pin sprite origin to certain moving feature
of the frame (e.g. left foot).

Note: Enabling this will override any previously set anchor on each frame change.

Version:
  • 1.4.0
Default Value:
  • false

visibleboolean

The visibility of the object. If false the object will not be drawn, and the updateTransform function will not be called.

Only affects recursive calls from parent. You can ask for bounds or call updateTransform manually

widthnumber

The width of the sprite, setting this will actually modify the scale to achieve the value set

readonlyworldAlphanumber

The multiplied alpha of the displayObject

readonlyworldTransformTiny.Matrix

Current transform of the object based on world (parent) factors

readonlyworldVisibleboolean

Indicates if the object is globally visible.

xnumber

The position of the displayObject on the x axis relative to the local coordinates of the parent.
An alias to position.x

ynumber

The position of the displayObject on the y axis relative to the local coordinates of the parent.
An alias to position.y

Methods

staticTiny.AnimatedSprite.fromFrames(frames){AnimatedSprite}

A short hand way of creating a movieclip from an array of frame ids

Name Type Description
frames Array.<string>

The array of frames ids the movieclip will use as its texture frames

Returns:
Type Description
AnimatedSprite The new animated sprite with the specified frames.

staticTiny.AnimatedSprite.fromImages(images){AnimatedSprite}

A short hand way of creating a movieclip from an array of image ids

Name Type Description
images Array.<string>

the array of image urls the movieclip will use as its texture frames

Returns:
Type Description
AnimatedSprite The new animate sprite with the specified images as frames.

Adds one or more children to the container.

Multiple items can be added like so: myContainer.addChild(thingOne, thingTwo, thingThree)

Name Type Description
child Tiny.DisplayObject repeatable

The DisplayObject(s) to add to the container

Returns:
Type Description
Tiny.DisplayObject The first child that was added.

Adds a child to the container at a specified index. If the index is out of bounds an error will be thrown

Name Type Description
child Tiny.DisplayObject

The child to add

index number

The index to place the child in

Returns:
Type Description
Tiny.DisplayObject The child that was added.

Recalculates the bounds of the container.

inherited calculateTrimmedVertices()

calculates worldTransform * vertices for a non texture with a trim. store it in vertexTrimmedData
This is used to ensure that the true width and height of a trimmed texture is respected

calculates worldTransform * vertices, store it in vertexData

inherited containsPoint(point){boolean}

Tests if a point is inside this sprite

Name Type Description
point Tiny.Point

the point to test

Returns:
Type Description
boolean the result of the test

Stops the AnimatedSprite and destroys it

Name Type Description
options object | boolean optional

Options parameter. A boolean will act as if all options have been set to that value

Name Type Default Description
children boolean false optional

if set to true, all the children will have their destroy method called as well. 'options' will be passed on to those calls.

texture boolean false optional

Should it destroy the current texture of the sprite as well

baseTexture boolean false optional

Should it destroy the base texture of the sprite as well

inherited getAnchor(){object}

Returns:
Type Description
object

Retrieves the bounds of the displayObject as a rectangle object.

Name Type Description
skipUpdate boolean

setting to true will stop the transforms of the scene graph from being updated. This means the calculation returned MAY be out of date BUT will give you nice performance boost

rect Tiny.Rectangle

Optional rectangle to store the result of the bounds calculation

Returns:
Type Description
Tiny.Rectangle the rectangular bounding area

Returns the child at the specified index

Name Type Description
index number

The index to get the child at

Returns:
Type Description
Tiny.DisplayObject The child at the given index, if any.

Returns the display object in the container

Name Type Description
name string

instance name

Returns:
Type Description
Tiny.DisplayObject The child with the specified name.

inherited getChildIndex(child){number}

Returns the index position of a child DisplayObject instance

Name Type Description
child Tiny.DisplayObject

The DisplayObject instance to identify

Returns:
Type Description
number The index position of the child display object to identify

inherited getGlobalPosition(point, skipUpdate){Tiny.Point}

Returns the global position of the displayObject. Does not depend on object scale, rotation and pivot.

Name Type Default Description
point Tiny.Point

the point to write the global value to. If null a new point will be returned

skipUpdate boolean false

setting to true will stop the transforms of the scene graph from being updated. This means the calculation returned MAY be out of date BUT will give you a nice performance boost

Returns:
Type Description
Tiny.Point The updated point

Gets the local bounds of the sprite object.

Name Type Description
rect Tiny.Rectangle

The output rectangle.

Returns:
Type Description
Tiny.Rectangle The bounds.

获取对象的属性:x, y, angle, rotation, visible, alpha, scaleX, scaleY, skewX, skewY, colorR, colorG, colorB

Returns:
Type Description
object
Returns:
Type Description
number
Returns:
Type Description
number
Returns:
Type Description
object
Returns:
Type Description
number
Returns:
Type Description
number
Returns:
Type Description
number
Returns:
Type Description
object
Version:
  • 1.1.0
Returns:
Type Description
object
Returns:
Type Description
boolean

gotoAndPlay(frameNumber)

Goes to a specific frame and begins playing the AnimatedSprite

Name Type Description
frameNumber number

frame index to start at

gotoAndStop(frameNumber)

Stops the AnimatedSprite and goes to a specific frame

Name Type Description
frameNumber number

frame index to stop at

Plays the AnimatedSprite

移除该对象上绑定的某个(些) Action

Name Type Description
actions Tiny.Action repeatable

要移除的某个(些)动作

Version:
  • 1.6.0
Example
sprite.removeAction(action1, action2);

移除该对象上绑定的所有 Action

移除该对象及其子集上绑定的所有 Action

Removes one or more children from the container.

Name Type Description
child Tiny.DisplayObject repeatable

The DisplayObject(s) to remove

Returns:
Type Description
Tiny.DisplayObject The first child that was removed.

Removes a child from the specified index position.

Name Type Description
index number

The index to get the child from

Returns:
Type Description
Tiny.DisplayObject The child that was removed.

inherited removeChildren(beginIndex, endIndex){Array.<DisplayObject>}

Removes all children from this container that are within the begin and end indexes.

Name Type Default Description
beginIndex number 0 optional

The beginning position.

endIndex number this.children.length optional

The ending position. Default value is size of the container.

Returns:
Type Description
Array.<DisplayObject> List of removed children

Renders the object using the Canvas renderer

Name Type Description
renderer Tiny.CanvasRenderer

The renderer

Renders the object using the WebGL renderer

Name Type Description
renderer Tiny.WebGLRenderer

The renderer

Reverse the Animation

Version:
  • 1.0.2

让 action 们动起来吧

Tips: 多组action同时:runAction([action1, action2], action3)

Name Type Description
actions array.<Tiny.Action> | Tiny.Action

action 数组或参数序列

Example
var action = Tiny.MoveBy(1000, Tiny.point(100, 100));
container.runAction(Tiny.RepeatForever(action));
// container 会在舞台的(0, 0)位置和(100, 100)位置来回不停的移动

inherited runSequenceAction(actions)

有顺序的让 action 们动起来吧

Tips: runSequenceAction(action1, action2)

Name Type Description
actions array.<Tiny.Action> | Tiny.Action

action 数组或参数序列

Example
var action1 = Tiny.MoveTo(1000, Tiny.point(100, 100));
var action2 = Tiny.ScaleBy(1200, Tiny.scale(0.25, 2));
var action3 = Tiny.RotateTo(2000, {rotation: Tiny.PI_2});
container.runSequenceAction(action1, action2, action3);
//container 先在1000ms内从坐标(0, 0)移动到(100, 100),然后在1200ms内横向缩小0.25倍,纵向拉伸2倍,最后在2000ms内顺时针旋转360度
Name Type Description
x
y

inherited setChildIndex(child, index)

Changes the position of an existing child in the display object container

Name Type Description
child Tiny.DisplayObject

The child DisplayObject instance for which you want to change the index number

index number

The resulting index number for the child display object

设置是否可交互

Name Type Description
b boolean
Name Type Description
alpha number

Set the parent Container of this DisplayObject

Name Type Description
container Tiny.Container

The Container to add this DisplayObject to

Returns:
Type Description
Tiny.Container The Container that this DisplayObject was added to
Name Type Description
x number
y number
Name Type Description
x number
y number
Name Type Description
x number
Name Type Description
y number
Name Type Description
rotation number
Name Type Description
x number
y number
Name Type Description
x number
y number
Version:
  • 1.1.0

inherited setTransform(x, y, scaleX, scaleY, rotation, skewX, skewY, pivotX, pivotY){Tiny.DisplayObject}

Convenience function to set the position, scale, skew and pivot at once.

Name Type Default Description
x number 0 optional

The X position

y number 0 optional

The Y position

scaleX number 1 optional

The X scale value

scaleY number 1 optional

The Y scale value

rotation number 0 optional

The rotation

skewX number 0 optional

The X skew value

skewY number 0 optional

The Y skew value

pivotX number 0 optional

The X pivot value

pivotY number 0 optional

The Y pivot value

Returns:
Type Description
Tiny.DisplayObject The DisplayObject instance
Name Type Description
visible boolean

Stops the AnimatedSprite

inherited swapChildren(child, child2)

Swaps the position of 2 Display Objects within this container.

Name Type Description
child Tiny.DisplayObject

First display object to swap

child2 Tiny.DisplayObject

Second display object to swap

inherited toGlobal(position, point, skipUpdate){Tiny.Point}

Calculates the global position of the display object

Name Type Default Description
position Tiny.Point

The world origin to calculate from

point Tiny.Point optional

A Point object in which to store the value, optional (otherwise will create a new Point)

skipUpdate boolean false optional

Should we skip the update transform.

Returns:
Type Description
Tiny.Point A point object representing the position of this object

inherited toLocal(position, from, point, skipUpdate){Tiny.Point}

Calculates the local position of the display object relative to another point

Name Type Default Description
position Tiny.Point

The world origin to calculate from

from Tiny.DisplayObject optional

The DisplayObject to calculate the global position from

point Tiny.Point optional

A Point object in which to store the value, optional (otherwise will create a new Point)

skipUpdate boolean false optional

Should we skip the update transform

Returns:
Type Description
Tiny.Point A point object representing the position of this object

Updates the transform on all children of this container for rendering

Events

Fired when this DisplayObject is added to a Container.

Name Type Description
container Tiny.Container

The container added to.

Fired when a pointer device button (usually a mouse left-button) is pressed and released on the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device button (usually a mouse left-button) is pressed on the display. object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device (usually a mouse) is moved while over the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device (usually a mouse) is moved off the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device (usually a mouse) is moved onto the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device button (usually a mouse left-button) is released over the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device button (usually a mouse left-button) is released outside the display object that initially registered a mousedown.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when the operating system cancels a pointer event.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device button is pressed on the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device is moved while over the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device is moved off the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device is moved onto the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device button is pressed and released on the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device button is released over the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device button is released outside the display object that initially registered a pointerdown.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when this DisplayObject is removed from a Container.

Name Type Description
container Tiny.Container

The container removed from.

Fired when a pointer device secondary button (usually a mouse right-button) is pressed and released on the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device secondary button (usually a mouse right-button) is pressed on the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device secondary button (usually a mouse right-button) is released over the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a pointer device secondary button (usually a mouse right-button) is released outside the display object that initially registered a rightdown.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a touch point is placed and removed from the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when the operating system cancels a touch.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a touch point is removed from the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a touch point is removed outside of the display object that initially registered a touchstart.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a touch point is moved along the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Fired when a touch point is placed on the display object.
DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event Tiny.interaction.InteractionEvent

Interaction event

Documentation generated by JSDoc 3.4.3 on Fri Jul 09 2021 19:32:26 GMT+0800 (CST)