@polyzone/core
Version:
PolyZone core API
48 lines (47 loc) • 1.45 kB
TypeScript
import { AnyVector } from './index';
export declare class Vector3 {
private _x;
private _y;
private _z;
constructor(x: number, y: number, z: number);
setValue(value: Vector3): void;
addSelf(value: AnyVector): Vector3;
add(value: AnyVector): Vector3;
subtractSelf(value: AnyVector): Vector3;
subtract(value: AnyVector): Vector3;
multiplySelf(factor: number): Vector3;
multiplySelf(other: Vector3): Vector3;
multiply(factor: number): Vector3;
multiply(other: Vector3): Vector3;
divideSelf(factor: number): Vector3;
divideSelf(other: Vector3): Vector3;
divide(factor: number): Vector3;
divide(other: Vector3): Vector3;
length(): number;
lengthSquared(): number;
normalizeSelf(): Vector3;
normalize(): Vector3;
crossSelf(other: Vector3): Vector3;
cross(other: Vector3): Vector3;
dot(other: Vector3): number;
isNormalized(): boolean;
clone(): Vector3;
withX(value: number): Vector3;
withY(value: number): Vector3;
withZ(value: number): Vector3;
toString(): string;
get x(): number;
set x(value: number);
get y(): number;
set y(value: number);
get z(): number;
set z(value: number);
static zero(): Vector3;
static one(): Vector3;
static up(): Vector3;
static down(): Vector3;
static right(): Vector3;
static left(): Vector3;
static forward(): Vector3;
static back(): Vector3;
}