Supported platforms: android, ios, mac, pc
Available since: Gideros 2011.6
Description
The Matrix class specifies transformation from one coordinate space to another.
These transformations include translation, rotation, scaling and skewing.
A 2D transformation matrix is a 3 x 3 matrix in homogenous coordinate system:
![images/matrix_props.png]
You can get and set the values of all six of the properties in a
Matrix object: m11, m12, m21, m22, tx, and ty.
Since Gideros 2016.6, Matrix can also hold 3D (4x4) matrices.
Examples
Applying matrix to Sprite objects
local angle = math.rad(30)
-- create skew matrix
local m = Matrix.new(1, math.tan(angle), math.tan(angle), 1, 0, 0)
--aply to Sprite
local sprite = Sprite.new()
sprite:setMatrix(m)
| MethodsMatrix.new creates a new Matrix object[[1]] get anchor position from matrix transformation
 [[2]] returns the elements of this matrix instance
 [[3]] returns the value of the m11 component
 [[4]] returns the value of the m12 component
 [[5]] returns the value of the m21 component
 [[6]] returns the value of the m22 component
 [[7]] get all 16 elements of 4x4 matrix
 [[8]] get position from matrix transformation
 [[9]] get rotation for x axis
 [[10]] get rotation on y axis
 [[11]] get rotation for z axis
 [[12]] get scale from matrix transformation
 [[13]] get scale on x axis
 [[14]] get scale on y axis
 [[15]] get scale on z axis
 [[16]] returns the value of the tx component
 [[17]] returns the value of the ty component
 [[18]] returns the value of the tz component
 [[19]] get x position
 [[20]] get y position
 [[21]] get z position
 [[22]]
 [[23]] Multiply current matrix with new one
 [[24]]
 [[25]]
 [[26]]
 [[27]] combine existing rotation with provided
 [[28]] combine existing scale with provided scale
 [[29]] transform matrix for setting anchor position
 [[30]] sets all 6 elements of this matrix instance
 [[31]] sets the value of the m11 component
 [[32]] sets the value of the m22 component
 [[33]]
 [[34]]
 [[35]] set all 16 elements of 4x4 matrix
 [[36]] transform matrix for setting position
 [[37]] set rotation on x axis
 [[38]] set rotation on y axis
 [[39]] set rotation on z axis
 [[40]] transform matrix for setting scale
 [[41]] set scale on x axis
 [[42]] set scale on y axis
 [[43]] set scale on z axis
 [[44]] sets the value of the tx component
 [[45]] sets the value of the ty component
 [[46]] sets the value of the tz component
 [[47]] set x position
 [[48]] set y position
 [[49]] set z position
 [[50]]
 [[51]] combine existing translation with provided translation
 
 | EventsConstants |