Interface IMutableVector4

Interface for mutable 4D vectors. Provides in-place operations for 4-component vectors including 3D normalization.

interface IMutableVector4 {
    _v: TypedArray;
    bytesPerComponent: number;
    className: string;
    glslStrAsFloat: string;
    glslStrAsInt: string;
    w: number;
    wgslStrAsFloat: string;
    wgslStrAsInt: string;
    x: number;
    y: number;
    z: number;
    add(vec: IVector4): IMutableVector4;
    at(i: number): number;
    clone(): IMutableVector4;
    copyComponents(vec: IVector4): IMutableVector4;
    divide(value: number): IMutableVector4;
    divideVector(vec: IVector4): IMutableVector4;
    dot(vec: IVector4): number;
    flattenAsArray(): number[];
    isDummy(): boolean;
    isEqual(vec: IVector4, delta?: number): boolean;
    isStrictEqual(vec: IVector4): boolean;
    isTheSourceSame(arrayBuffer: ArrayBuffer): boolean;
    length(): number;
    lengthSquared(): number;
    lengthTo(vec: IVector4): number;
    multiply(value: number): IMutableVector4;
    multiplyVector(vec: IVector4): IMutableVector4;
    normalize(): IMutableVector4;
    normalize3(): IMutableVector4;
    one(): IMutableVector4;
    raw(): TypedArray;
    setAt(i: number, value: number): IMutableVector4;
    setComponents(x: number, y: number, z: number, w: number): IMutableVector4;
    subtract(vec: IVector4): IMutableVector4;
    toString(): string;
    toStringApproximately(): string;
    v(i: number): number;
    zero(): IMutableVector4;
}

Hierarchy (view full)

Implemented by

Properties

The underlying typed array containing vector components (mutable)

bytesPerComponent: number

Number of bytes per component in the underlying array

className: string

The class name identifier

glslStrAsFloat: string

GLSL string representation for float type

glslStrAsInt: string

GLSL string representation for integer type

w: number

The w component (mutable)

wgslStrAsFloat: string

WGSL string representation for float type

wgslStrAsInt: string

WGSL string representation for integer type

x: number

The x component (mutable)

y: number

The y component (mutable)

z: number

The z component (mutable)

Methods

  • Gets the component value at the specified index (alias for at).

    Parameters

    • i: number

      The component index

    Returns number

    The component value