@osbjs/math
Version:
math helper
39 lines (38 loc) • 1.51 kB
TypeScript
import { Quaternion } from '.';
import { Matrix4 } from './Matrix4';
export declare class Vector4 {
x: number;
y: number;
z: number;
w: number;
static One: Vector4;
static Unitx: Vector4;
static Unity: Vector4;
static Unitz: Vector4;
static Unitw: Vector4;
static zero: Vector4;
constructor(x?: number, y?: number, z?: number, w?: number);
equals(v: Vector4): boolean;
clone(): Vector4;
length(): number;
lengthSqr(): number;
distanceTo(v: Vector4): number;
distanceToSqr(v: Vector4): number;
static add(v1: Vector4, v2: Vector4): Vector4;
static sub(v1: Vector4, v2: Vector4): Vector4;
static multiply(v1: Vector4, v2: Vector4): Vector4;
static divide(v1: Vector4, v2: Vector4): Vector4;
static addScalar(v: Vector4, s: number): Vector4;
static subScalar(v: Vector4, s: number): Vector4;
static multiplyScalar(v: Vector4, s: number): Vector4;
static divideScalar(v: Vector4, s: number): Vector4;
static lerp(v1: Vector4, v2: Vector4, alpha: number): Vector4;
static abs(v: Vector4): Vector4;
static clamp(v: Vector4, min: Vector4, max: Vector4): Vector4;
static max(v1: Vector4, v2: Vector4): Vector4;
static min(v1: Vector4, v2: Vector4): Vector4;
static negate(v: Vector4): Vector4;
static normalize(v: Vector4): Vector4;
static applyQuat(v: Vector4, q: Quaternion): Vector4;
static applyMat4(v: Vector4, m: Matrix4): Vector4;
}