CADViewComponent/src/Matrix2.ts
ChenX ba3e5cabfd 完成下列功能:
1.板件显示
2.板件选中状态
3.标注显示
4.相机控制.
2018-05-24 17:13:23 +08:00

34 lines
690 B
TypeScript

import { Vector2, Vector3 } from "three";
export class Matrix2
{
private el = [1, 0, 0, 1];
set(n11: number, n12: number, n21: number, n22: number)
{
let te = this.el;
te[0] = n11; te[1] = n21;
te[2] = n12; te[3] = n22;
return this;
}
applyVector(vec: Vector2 | Vector3)
{
let x = vec.x, y = vec.y;
let e = this.el;
vec.x = e[0] * x + e[2] * y;
vec.y = e[1] * x + e[3] * y;
return this;
}
setRotate(theta: number): Matrix2
{
let el = this.el;
let c = Math.cos(theta), s = Math.sin(theta);
this.set(c, -s,
s, c);
return this;
}
}