Matrix

三阶矩阵——Matrix3

静态方法

multiply {Function}

乘法

  1. Matrix.Matrix3.multiply(m1, m2);

equal {Function}

等于

  1. Matrix.Matrix3.equal(m1, m2);

实例方法

set {Function}

设置矩阵

  1. /**
  2. * 设置矩阵
  3. * @param {Number} n11
  4. * @param {Number} n12
  5. * @param {Number} n13
  6. * @param {Number} n21
  7. * @param {Number} n22
  8. * @param {Number} n23
  9. * @param {Number} n31
  10. * @param {Number} n32
  11. * @param {Number} n33
  12. */
  13. matrix.set(
  14. n11, n12, n13,
  15. n21, n22, n23,
  16. n31, n32, n33
  17. );

get {Function}

获取矩阵元素

  1. /**
  2. * 获取矩阵元素
  3. * @param {Number} i 行
  4. * @param {Number} j 列
  5. * @return {Number} rst 元素
  6. */
  7. matrix.get(i, j);

identity {Function}

矩阵归一

  1. /**
  2. * 获取矩阵元素
  3. * @param {Number} i 行
  4. * @param {Number} j 列
  5. * @return {Number} rst 元素
  6. */
  7. matrix.get(i, j);

multiplyScalar {Function}

乘算子

  1. /**
  2. * 乘算子
  3. * @param {Number} s 算子
  4. */
  5. matrix.multiplyScalar(s);

det {Function}

求行列式

inverse {Function}

矩阵反转

transpose {Function}

矩阵转置

multiply {Function}

矩阵乘法

  1. /**
  2. * 矩阵乘法
  3. * @param {Matrix3} m 矩阵
  4. */
  5. matrix.multiply(m);

translate {Function}

仿射平移

  1. /**
  2. * 仿射平移
  3. * @param {Number} x 横坐标
  4. * @param {Number} y 纵坐标
  5. */
  6. matrix.translate(m);

rotate {Function}

仿射旋转

  1. /**
  2. * 仿射旋转
  3. * @param {Number} rad 角度
  4. */
  5. matrix.rotate(rad);

scale {Function}

仿射缩放

  1. /**
  2. * 仿射缩放
  3. * @param {Number} sx 横轴缩放比率
  4. * @param {Number} sy 纵轴缩放比率
  5. */
  6. matrix.scale(sx, sy);

equal {Function}

等于

copy {Function}

复制一个矩阵到自身

  1. /**
  2. * 复制
  3. * @param {Matrix3} m 矩阵
  4. */
  5. matrix.copy(m);

clone {Function}

克隆

  1. /**
  2. * 克隆
  3. * @return {Matrix3} m 矩阵
  4. */
  5. matrix.clone();

to2DObject {Function}

转换为2阶算子

  1. /**
  2. * 转换为2阶算子
  3. * @return {Object} 2阶算子
  4. */
  5. matrix.to2DObject();

from2DObject {Function}

解析2阶算子

  1. /**
  2. * 解析2阶算子
  3. * @param {Object} obj 2阶算子
  4. */
  5. matrix.from2DObject(obj);

二阶向量——Vector2

静态方法

add {Function}

  1. Matrix.Vector2.add(v1, v2);

sub {Function}

  1. Matrix.Vector2.sub(v1, v2);

lerp {Function}

插值

  1. Matrix.Vector2.lerp(v1, v2, r);

angle {Function}

夹角

  1. Matrix.Vector2.angle(v1, v2);

direction {Function}

方向

  1. Matrix.Vector2.direction(v1, v2);

实例方法

negate {Function}

向量反转

  1. vector.negate();

dot {Function}

点积

  1. /**
  2. * 点积
  3. * @param {Vector2} v 向量
  4. */
  5. vector.dot(v);

vertical {Function}

垂直

  1. /**
  2. * 垂直
  3. * @param {Boolean} left 朝向
  4. */
  5. vector.vertical(left);

length {Function}

求向量模长

  1. vector.length();

setLength {Function}

设置向量长

  1. /**
  2. * 设置向量长
  3. * @param {Number} length 长度
  4. */
  5. vector.setLength(length);

lerp {Function}

求插值

  1. /**
  2. * 求插值
  3. * @param {Number} r 比率
  4. */
  5. vector.lerp(r);

clone {Function}

克隆

  1. vector.clone();

rotate {Function}

旋转

  1. /**
  2. * 旋转
  3. * @param {Number} angle 角度
  4. */
  5. vector.rotate(angle);

angleTo {Function}

求角度

  1. /**
  2. * 求角度
  3. * @param {Vector2} v 向量
  4. * @param {Boolean} direct 方向
  5. */
  6. vector.angleTo(v, direct);

angle {Function}

求角度

  1. /**
  2. * 求角度
  3. * @param {Vector2} v 向量
  4. */
  5. vector.angle(v);