@flashport/flashport
Version:
FlashPort is a TypeScript 2D graphics library that largely replicates the Flash ActionScript 3.0 library
39 lines (38 loc) • 1.92 kB
TypeScript
import { Vector3D } from "./Vector3D";
export declare class Matrix3D {
private static TEMP;
constructor(v?: number[]);
get determinant(): number;
get position(): Vector3D;
set position(val: Vector3D);
rawData: Array<number>;
append(lhs: Matrix3D): void;
appendRotation(degrees: number, axis: Vector3D, pivotPoint?: Vector3D): void;
appendScale(xScale: number, yScale: number, zScale: number): void;
appendTranslation(x: number, y: number, z: number): void;
clone(): Matrix3D;
copyColumnFrom(column: number, vector3D: Vector3D): void;
copyColumnTo(column: number, vector3D: Vector3D): void;
copyFrom(other: Matrix3D): void;
copyRawDataFrom(vector: number[], index?: number, transpose?: boolean): void;
copyRawDataTo(vector: number[], index?: number, transpose?: boolean): void;
copyRowFrom(row: number, vector3D: Vector3D): void;
copyRowTo(row: number, vector3D: Vector3D): void;
copyToMatrix3D(other: Matrix3D): void;
decompose(orientationStyle?: string): Vector3D[];
deltaTransformVector(v: Vector3D): Vector3D;
identity(): void;
interpolateTo(toMat: Matrix3D, percent: number): void;
invert(): boolean;
pointAt(pos: Vector3D, at?: Vector3D, up?: Vector3D): void;
prepend(rhs: Matrix3D): void;
prependRotation(degrees: number, axis: Vector3D, pivotPoint?: Vector3D): void;
prependScale(xScale: number, yScale: number, zScale: number): void;
prependTranslation(x: number, y: number, z: number): void;
recompose(components: Vector3D[], orientationStyle?: string): boolean;
transformVector(v: Vector3D): Vector3D;
transformVectors(vin: number[], vout: number[]): void;
transpose(): void;
static interpolate(thisMat: Matrix3D, toMat: Matrix3D, percent: number): Matrix3D;
protected static getAxisRotation(x: number, y: number, z: number, degrees: number, target?: Matrix3D): Matrix3D;
}