vim-webgl-component
Version:
A demonstration app built on top of the vim-webgl-viewer
47 lines (46 loc) • 1.89 kB
TypeScript
/**
* @module vim-ts
*/
import { Vector2, Vector3, Vector4, AABox, AABox2D, AABox4D, Matrix4x4 } from "./structures";
export interface IConverter<T> {
get columns(): string[];
convertFromArray(array: number[]): T;
convertToArray(value: T): number[];
}
export declare class Vector2Converter implements IConverter<Vector2> {
get columns(): string[];
convertFromArray(array: number[]): Vector2;
convertToArray(value: Vector2): number[];
}
export declare class Vector3Converter implements IConverter<Vector3> {
get columns(): string[];
convertFromArray(array: number[]): Vector3;
convertToArray(value: Vector3): number[];
}
export declare class Vector4Converter implements IConverter<Vector4> {
get columns(): string[];
convertFromArray(array: number[]): Vector4;
convertToArray(value: Vector4): number[];
}
export declare class AABox2DConverter implements IConverter<AABox2D> {
get columns(): string[];
convertFromArray(array: number[]): AABox2D;
convertToArray(value: AABox2D): number[];
}
export declare class AABoxConverter implements IConverter<AABox> {
get columns(): string[];
convertFromArray(array: number[]): AABox;
convertToArray(value: AABox): number[];
}
export declare class AABox4DConverter implements IConverter<AABox4D> {
get columns(): string[];
convertFromArray(array: number[]): AABox4D;
convertToArray(value: AABox4D): number[];
}
export declare class Matrix4x4Converter implements IConverter<Matrix4x4> {
get columns(): string[];
convertFromArray(array: number[]): Matrix4x4;
convertToArray(value: Matrix4x4): number[];
}
export declare function convert<T>(converter: IConverter<T>, array: (number | undefined)[]): T;
export declare function convertArray<T>(converter: IConverter<T>, arrays: (number[] | undefined)[]): T[];