inverse-kinematics
Version:
Inverse kinematics for 2D and 3D applications
38 lines (37 loc) • 2.09 kB
TypeScript
import { V2 } from './V2';
export declare const combine: (a: V2, b: V2, operation: (aElement: number, bElement: number) => number) => V2;
export declare const angle: ([x, y]: V2) => number;
export declare const add: (a: V2, b: V2) => V2;
export declare const map: <T>(vector: V2, callback: (element: number, elementIndex: number, vector: V2) => T) => [T, T];
export declare const maxAbs: (vector: V2, max: number) => V2;
export declare const maxElement: (a: V2) => number;
export declare const abs: (a: V2) => V2;
export declare const subtract: (base: V2, subtraction: V2) => V2;
export declare const multiply: (base: V2, multiplier: V2) => V2;
export declare const dot: (a: V2, b: V2) => number;
export declare const lerp: (from: V2, to: V2, amount: number) => V2;
export declare const clamp: (value: V2, min: V2, max: V2) => V2;
export declare const tangent: (vector: V2) => V2;
export declare const scale: (base: V2, factor: number) => V2;
export declare const divideScalar: (base: V2, divisor: number) => V2;
export declare const divide: (base: V2, divisor: V2) => V2;
export declare const normalise: (vector: V2) => V2;
export declare const sqrEuclideanLength: (vector: V2) => number;
export declare const euclideanLength: (vector: V2) => number;
export declare const sqrEuclideanDistance: (a: V2, b: V2) => number;
export declare const euclideanDistance: (a: V2, b: V2) => number;
export declare const rotate: ([x, y]: V2, angleRadians: number) => V2;
export declare const zero: () => V2;
export declare const flipX: (vector: V2) => V2;
export declare const flipY: (vector: V2) => V2;
export declare const flipAxes: (vector: V2) => V2;
export declare const pickX: (vector: V2) => V2;
export declare const pickY: (vector: V2) => V2;
export declare const fromArray: (array: number[]) => V2;
export declare const valueEquality: (a: V2, b: V2) => boolean;
export declare const fromVector2: ({ x, y }: {
x: number;
y: number;
}) => V2;
export declare const average: (vectors_0: V2, ...vectors_1: V2[]) => V2;
export declare const fromPolar: (radius: number, angle: number) => V2;