Class: Matrix

Phaser. Matrix

new Matrix( [a] [, b] [, c] [, d] [, tx] [, ty])

The Matrix is a 3x3 matrix mostly used for display transforms within the renderer.

It is represented like so:

| a | c | tx | | b | d | ty | | 0 | 0 | 1 |

Parameters:
Name Type Argument Default Description
a number <optional>
1

Horizontal scaling

b number <optional>
0

Horizontal skewing

c number <optional>
0

Vertical skewing

d number <optional>
1

Vertical scaling

tx number <optional>
0

Horizontal translation

ty number <optional>
0

Vertical translation

Source:
src/geom/Matrix.js line 26

Members

a : number

Type:
  • number
Default Value:
  • 1
Source:
src/geom/Matrix.js line 40

b : number

Type:
  • number
Default Value:
  • 0
Source:
src/geom/Matrix.js line 46

c : number

Type:
  • number
Default Value:
  • 0
Source:
src/geom/Matrix.js line 52

d : number

Type:
  • number
Default Value:
  • 1
Source:
src/geom/Matrix.js line 58

tx : number

Type:
  • number
Default Value:
  • 0
Source:
src/geom/Matrix.js line 64

ty : number

Type:
  • number
Default Value:
  • 0
Source:
src/geom/Matrix.js line 70

<readonly> type : number

The const type of this object.

Type:
  • number
Source:
src/geom/Matrix.js line 76

Methods

append(matrix)

Appends the given Matrix to this Matrix.

Parameters:
Name Type Description
matrix Phaser.Matrix

The matrix to append to this one.

Source:
src/geom/Matrix.js line 357
Returns:

This Matrix object.

Type
Phaser.Matrix

apply(pos [, newPos])

Get a new position with the current transformation applied.

Can be used to go from a childs coordinate space to the world coordinate space (e.g. rendering)

Parameters:
Name Type Argument Description
pos Phaser.Point

The origin Point.

newPos Phaser.Point <optional>

The point that the new position is assigned to. This can be same as input point.

Source:
src/geom/Matrix.js line 240
Returns:

The new point, transformed through this matrix.

Type
Phaser.Point

applyInverse(pos [, newPos])

Get a new position with the inverse of the current transformation applied.

Can be used to go from the world coordinate space to a childs coordinate space. (e.g. input)

Parameters:
Name Type Argument Description
pos Phaser.Point

The origin Point.

newPos Phaser.Point <optional>

The point that the new position is assigned to. This can be same as input point.

Source:
src/geom/Matrix.js line 262
Returns:

The new point, inverse transformed through this matrix.

Type
Phaser.Point

clone( [output])

Creates a new Matrix object based on the values of this Matrix. If you provide the output parameter the values of this Matrix will be copied over to it. If the output parameter is blank a new Matrix object will be created.

Parameters:
Name Type Argument Description
output Phaser.Matrix <optional>

If provided the values of this Matrix will be copied to it, otherwise a new Matrix object is created.

Source:
src/geom/Matrix.js line 131
Returns:

A clone of this Matrix.

Type
Phaser.Matrix

copyFrom(matrix)

Copies the properties from the given Matrix into this Matrix.

Parameters:
Name Type Description
matrix Phaser.Matrix

The Matrix to copy from.

Source:
src/geom/Matrix.js line 177
Returns:

This Matrix object.

Type
Phaser.Matrix

copyTo(matrix)

Copies the properties from this Matrix to the given Matrix.

Parameters:
Name Type Description
matrix Phaser.Matrix

The Matrix to copy from.

Source:
src/geom/Matrix.js line 161
Returns:

The destination Matrix object.

Type
Phaser.Matrix

fromArray(array)

Sets the values of this Matrix to the values in the given array.

The Array elements should be set as follows:

a = array[0] b = array[1] c = array[3] d = array[4] tx = array[2] ty = array[5]

Parameters:
Name Type Description
array Array

The array to copy from.

Source:
src/geom/Matrix.js line 82
Returns:

This Matrix object.

Type
Phaser.Matrix

identity()

Resets this Matrix to an identity (default) matrix.

Source:
src/geom/Matrix.js line 384
Returns:

This Matrix object.

Type
Phaser.Matrix

rotate(angle)

Applies a rotation transformation to this matrix.

Parameters:
Name Type Description
angle number

The angle to rotate by, given in radians.

Source:
src/geom/Matrix.js line 329
Returns:

This Matrix object.

Type
Phaser.Matrix

scale(x, y)

Applies a scale transformation to this matrix.

Parameters:
Name Type Description
x number

The amount to scale horizontally.

y number

The amount to scale vertically.

Source:
src/geom/Matrix.js line 307
Returns:

This Matrix object.

Type
Phaser.Matrix

setTo(a, b, c, d, tx, ty)

Sets the values of this Matrix to the given values.

Parameters:
Name Type Description
a number

Horizontal scaling

b number

Horizontal skewing

c number

Vertical skewing

d number

Vertical scaling

tx number

Horizontal translation

ty number

Vertical translation

Source:
src/geom/Matrix.js line 105
Returns:

This Matrix object.

Type
Phaser.Matrix

toArray( [transpose] [, array])

Creates a Float32 Array with values populated from this Matrix object.

Parameters:
Name Type Argument Default Description
transpose boolean <optional>
false

Whether the values in the array are transposed or not.

array Float32Array <optional>

If provided the values will be set into this array, otherwise a new Float32Array is created.

Source:
src/geom/Matrix.js line 198
Returns:

The newly created array which contains the matrix.

Type
Float32Array

translate(x, y)

Translates the matrix on the x and y. This is the same as Matrix.tx += x.

Parameters:
Name Type Description
x number

The x value to translate on.

y number

The y value to translate on.

Source:
src/geom/Matrix.js line 288
Returns:

This Matrix object.

Type
Phaser.Matrix

phaser-ce@2.11.1 is on GitHub and NPM

Documentation generated by JSDoc 3.5.4 on 2018-10-02 using Tomorrow.