UNPKG

1.43 kBTypeScriptView Raw
1import { MatrixArray } from './matrix';
2export interface PointLike {
3 x: number;
4 y: number;
5}
6export default class Point {
7 x: number;
8 y: number;
9 constructor(x?: number, y?: number);
10 copy(other: PointLike): this;
11 clone(): Point;
12 set(x: number, y: number): this;
13 equal(other: PointLike): boolean;
14 add(other: PointLike): this;
15 scale(scalar: number): void;
16 scaleAndAdd(other: PointLike, scalar: number): void;
17 sub(other: PointLike): this;
18 dot(other: PointLike): number;
19 len(): number;
20 lenSquare(): number;
21 normalize(): this;
22 distance(other: PointLike): number;
23 distanceSquare(other: Point): number;
24 negate(): this;
25 transform(m: MatrixArray): this;
26 toArray(out: number[]): number[];
27 fromArray(input: number[]): void;
28 static set(p: PointLike, x: number, y: number): void;
29 static copy(p: PointLike, p2: PointLike): void;
30 static len(p: PointLike): number;
31 static lenSquare(p: PointLike): number;
32 static dot(p0: PointLike, p1: PointLike): number;
33 static add(out: PointLike, p0: PointLike, p1: PointLike): void;
34 static sub(out: PointLike, p0: PointLike, p1: PointLike): void;
35 static scale(out: PointLike, p0: PointLike, scalar: number): void;
36 static scaleAndAdd(out: PointLike, p0: PointLike, p1: PointLike, scalar: number): void;
37 static lerp(out: PointLike, p0: PointLike, p1: PointLike, t: number): void;
38}