Matrix
获取方式
const Matrix = F2.G.Matrix;
方法
提供 3x2 矩阵操作方法,具体提供了以下方法:
multiply(m1, m2)
两个矩阵相乘。
/**
* 两个矩阵相乘
* @param {Array} m1 左矩阵
* @param {Array} m2 右矩阵
* @return {Array} 返回结果
*/
multiply(m1, m2)
scale(out, m, v)
缩放变换。
/**
* 缩放变换
* @param {Array} out 该变量用于存储缩放结果
* @param {Array} m 需要变换矩阵
* @param {Array} v 缩放向量 [ sx, sy ]
* @return {Array} 返回结果
*/
scale(out, m, v)
rotate(out, m, radian)
旋转变换。
/**
* 旋转变换
* @param {Array} out 该变量用于存储缩放结果
* @param {Array} m 需要变换矩阵
* @param {Array} radian 旋转的弧度
* @return {Array} 返回结果
*/
rotate(out, m, radian)
translate(out, m, v)
平移变换。
/**
* 平移变换。
* @param {Array} out 该变量用于存储缩放结果
* @param {Array} m 需要变换矩阵
* @param {Array} v 平移向量 [ x, y ]
* @return {Array} 返回结果
*/
translate(out, m, v)
transform(m, actions)
进行平移、旋转、缩放的变换,所有的操作配置在 actions 属性中进行,actions 支持的操作包含 't'(translate)、's'(scale)、'r'(rotate),可进行任意组合,如下实例所示:
[
[ 't', x, y ], // t 表示 translate, x 表示 x 方向的位移值,y 表示 y 方向的位移值
[ 's', sx, sy ], // s 表示 scale, sx 表示 x 方向上的缩放值,sy 表示 y 方向的缩放值
[ 'r', radian] // r 表示 rotate,radian 表示旋转的弧度值
]
/**
*
* @param {Array} m 需要变换矩阵
* @param {Array} actions 变换操作集合
* @return {Array} 返回结果
*/
transform(m, actions)