UNPKG

@js-basics/vector

Version:

A 3D Vector lib including arithmetic operator overloading (+ - * / % **).

75 lines (74 loc) 1.68 kB
export function calc(alg: any): any; export class Point extends APoint { calc(alg: any): any; clone(): Point; } export class IPoint extends APoint { /** * @returns {Point & number} */ toPoint(): Point & number; } export function point(x: number | (() => number), y?: number): Point & number; export function ipoint(x: number | (() => number), y?: number): IPoint & number; export const ZERO: IPoint & number; export const FORWARD: IPoint & number; export const LEFT: IPoint & number; declare class APoint { constructor(...args: any[]); valueOf(): void; /** * @returns {this} */ normalize(): this; /** * @returns {this} */ norm(): this; dot(v: any): number; getRad(): number; /** * @param {APoint} v */ angleTo(v: APoint): number; /** * @param {number} angle * @returns {this} */ rotate(angle: number): this; /** * @param {APoint} v */ distance(v: APoint): number; /** * @param {APoint} v */ dist(v: APoint): number; /** * @returns {[number, number]} */ toArray(): [number, number]; calc(alg: any): void; clone(): void; equals(v: any): boolean; toJSON(): { x: any; y: any; }; toString(): string; toCSSVars(name: any, target: any): {}; get lengthSq(): number; get length(): number; get lensq(): number; get len(): number; set x(_: any); get x(): any; set y(_: any); get y(): any; set z(_: void); get z(): void; [Symbol.iterator](): ArrayIterator<any>; [AXES]: any[]; } declare const AXES: unique symbol; export {};