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 | b | tx | | c | 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 39
-
b : number
-
Type:
- number
- Default Value:
-
- 0
- Source:
- src/geom/Matrix.js line 45
-
c : number
-
Type:
- number
- Default Value:
-
- 0
- Source:
- src/geom/Matrix.js line 51
-
d : number
-
Type:
- number
- Default Value:
-
- 1
- Source:
- src/geom/Matrix.js line 57
-
tx : number
-
Type:
- number
- Default Value:
-
- 0
- Source:
- src/geom/Matrix.js line 63
-
ty : number
-
Type:
- number
- Default Value:
-
- 0
- Source:
- src/geom/Matrix.js line 69
-
<readonly> type : number
-
The const type of this object.
Type:
- number
- Source:
- src/geom/Matrix.js line 75
Methods
-
append(matrix)
-
Appends the given Matrix to this Matrix.
Parameters:
Name Type Description matrixPhaser.Matrix The matrix to append to this one.
- Source:
- src/geom/Matrix.js line 345
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 posPhaser.Point The origin Point.
newPosPhaser.Point <optional>
The point that the new position is assigned to. This can be same as input point.
- Source:
- src/geom/Matrix.js line 233
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 posPhaser.Point The origin Point.
newPosPhaser.Point <optional>
The point that the new position is assigned to. This can be same as input point.
- Source:
- src/geom/Matrix.js line 254
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 outputPhaser.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 128
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 matrixPhaser.Matrix The Matrix to copy from.
- Source:
- src/geom/Matrix.js line 172
Returns:
This Matrix object.
- Type
- Phaser.Matrix
-
copyTo(matrix)
-
Copies the properties from this Matrix to the given Matrix.
Parameters:
Name Type Description matrixPhaser.Matrix The Matrix to copy from.
- Source:
- src/geom/Matrix.js line 157
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 arrayArray The array to copy from.
- Source:
- src/geom/Matrix.js line 81
Returns:
This Matrix object.
- Type
- Phaser.Matrix
-
identity()
-
Resets this Matrix to an identity (default) matrix.
- Source:
- src/geom/Matrix.js line 371
Returns:
This Matrix object.
- Type
- Phaser.Matrix
-
rotate(angle)
-
Applies a rotation transformation to this matrix.
Parameters:
Name Type Description anglenumber The angle to rotate by, given in radians.
- Source:
- src/geom/Matrix.js line 318
Returns:
This Matrix object.
- Type
- Phaser.Matrix
-
scale(x, y)
-
Applies a scale transformation to this matrix.
Parameters:
Name Type Description xnumber The amount to scale horizontally.
ynumber The amount to scale vertically.
- Source:
- src/geom/Matrix.js line 297
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 anumber Horizontal scaling
bnumber Horizontal skewing
cnumber Vertical skewing
dnumber Vertical scaling
txnumber Horizontal translation
tynumber Vertical translation
- Source:
- src/geom/Matrix.js line 103
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 transposeboolean <optional>
false Whether the values in the array are transposed or not.
arrayFloat32Array <optional>
If provided the values will be set into this array, otherwise a new Float32Array is created.
- Source:
- src/geom/Matrix.js line 192
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 xnumber The x value to translate on.
ynumber The y value to translate on.
- Source:
- src/geom/Matrix.js line 279
Returns:
This Matrix object.
- Type
- Phaser.Matrix