polygonjs-engine
Version:
node-based webgl 3D engine https://polygonjs.com
46 lines (45 loc) • 2.13 kB
TypeScript
import { LngLatLike, Vector2Like } from '../../types/GlobalTypes';
import { Triangle } from 'three/src/math/Triangle';
export declare class CoreMath {
static Easing: {
linear: (t: number) => number;
ease_i: (t: number, power: number) => number;
ease_o: (t: number, power: number) => number;
ease_io: (t: number, power: number) => number;
ease_i2: (t: number) => number;
ease_o2: (t: number) => number;
ease_io2: (t: number) => number;
ease_i3: (t: number) => number;
ease_o3: (t: number) => number;
ease_io3: (t: number) => number;
ease_i4: (t: number) => number;
ease_o4: (t: number) => number;
ease_io4: (t: number) => number;
ease_i_sin: (t: number) => number;
ease_o_sin: (t: number) => number;
ease_io_sin: (t: number) => number;
ease_i_elastic: (t: number) => number;
ease_o_elastic: (t: number) => number;
ease_io_elastic: (t: number) => number;
};
static clamp(val: number, min: number, max: number): number;
static fit01(val: number, dest_min: number, dest_max: number): number;
static fit(val: number, src_min: number, src_max: number, dest_min: number, dest_max: number): number;
static blend(num0: number, num1: number, blend: number): number;
static degrees_to_radians(degrees: number): number;
static radians_to_degrees(radians: number): number;
static deg2rad(deg: number): number;
static rad2deg(rad: number): number;
static fract: (number: number) => number;
static rand(number: number): number;
static round(number: number, step_size: number): number;
static highest_even(number: number): number;
private static _vec;
static rand_float(x: number, y?: number): number;
static rand_vec2(uv: Vector2Like): number;
static geodesic_distance(lnglat1: LngLatLike, lnglat2: LngLatLike): number;
private static _triangle_mid;
private static _triangle_mid_to_corner;
static expand_triangle(triangle: Triangle, margin: number): void;
static nearestPower2(num: number): number;
}