UNPKG

nanogl-node

Version:

handle objects transform in 3D space

35 lines (34 loc) 965 B
import { vec3, quat, mat4 } from 'gl-matrix'; declare class Node { readonly position: vec3; readonly rotation: quat; readonly scale: vec3; readonly _matrix: mat4; readonly _wmatrix: mat4; readonly _wposition: vec3; _parent: Node | null; _children: Node[]; private _invalidM; private _invalidW; constructor(); rotateX(rad: number): void; rotateY(rad: number): void; rotateZ(rad: number): void; set x(v: number); set y(v: number); set z(v: number); get x(): number; get y(): number; get z(): number; setScale(s: number): void; lookAt(tgt: vec3): void; setMatrix(m4: mat4): void; add(child: Node): void; remove(child: Node): void; invalidate(): void; updateMatrix(): void; updateWorldMatrix(skipParents?: boolean): void; _computeWorldMatrix(skipParents: boolean): void; _hasInvalidWorldMatrix(skipParents: boolean): boolean; } export default Node;