UNPKG

@plurid/plurid-engine

Version:
38 lines (37 loc) 1.54 kB
import { Quaternion } from '../../quaternion'; export declare type Matrix = number[][]; export declare const getInitialMatrix: () => Matrix; export declare const multiplyMatrices: (m1: Matrix, m2: Matrix) => Matrix; /** * Multiplies multiple `matrices`, must contain at least 2. * * @param matrices * @returns */ export declare const multiplyMatricesArray: (matrices: Matrix[]) => Matrix; export declare const arrayToMatrix: (array: number[]) => Matrix; export declare const matrixToArray: (matrix: Matrix) => number[]; /** * Parse a `matrix3d` string into a `Matrix`. * * @param value * @returns */ export declare const matrix3DToMatrix: (value: string) => Matrix; export declare const printMatrix: (matrix: Matrix, name: string) => void; export declare const rotateXMatrix: (angle: number) => Matrix; export declare const rotateYMatrix: (angle: number) => Matrix; export declare const rotateZMatrix: (angle: number) => Matrix; export declare const translateMatrix: (x?: number, y?: number, z?: number) => Matrix; export declare const scaleMatrix: (s: number) => Matrix; export declare function rotationMatrixFromQuaternion(quaternion: Quaternion): Matrix; export declare const matrixToCSSMatrix: (matrix: Matrix) => string; export declare const identityMatrix: () => Matrix; /** * Inverse a matrix based on * https://github.com/josdejong/mathjs/blob/develop/src/function/matrix/inv.js * * @param matrix * @returns */ export declare const inverseMatrix: (matrix: Matrix) => Matrix;