Interface IMutableMatrix33

Interface for mutable 3x3 matrices. Provides modifiable 3x3 matrix operations for 3D transformations without translation.

interface IMutableMatrix33 {
    m00: number;
    m01: number;
    m02: number;
    m10: number;
    m11: number;
    m12: number;
    m20: number;
    m21: number;
    m22: number;
    _swap(l: number, r: number): void;
    at(row_i: number, column_i: number): number;
    clone(): IMutableMatrix33;
    copyComponents(mat: IMatrix33 | IMatrix44): IMutableMatrix33;
    determinant(): number;
    flattenAsArray(): number[];
    getScale(): IVector3;
    getScaleTo(outVec: IMutableVector3): IMutableVector3;
    identity(): IMutableMatrix33;
    invert(): IMutableMatrix33;
    isDummy(): boolean;
    isEqual(mat: IMatrix33, delta?: number): boolean;
    isStrictEqual(mat: IMatrix33): boolean;
    multiply(mat: IMatrix33): IMutableMatrix33;
    multiplyByLeft(mat: IMatrix33): IMutableMatrix33;
    multiplyScale(vec: IVector3): IMutableMatrix33;
    multiplyVector(vec: IVector3): IVector3;
    multiplyVectorTo(vec: IVector3, outVec: IMutableVector3): IMutableVector3;
    raw(): TypedArray;
    rotate(vec3: IVector3): IMutableMatrix33;
    rotateX(radian: number): IMutableMatrix33;
    rotateXYZ(x: number, y: number, z: number): IMutableMatrix33;
    rotateY(radian: number): IMutableMatrix33;
    rotateZ(radian: number): IMutableMatrix33;
    scale(vec: IVector3): IMutableMatrix33;
    setAt(row_i: number, column_i: number, value: number): IMutableMatrix33;
    setComponents(m00: number, m01: number, m02: number, m10: number, m11: number, m12: number, m20: number, m21: number, m22: number): IMutableMatrix33;
    toString(): string;
    toStringApproximately(): string;
    transpose(): IMutableMatrix33;
    zero(): IMutableMatrix33;
}

Implemented by

Properties

m00: number

Element at row 0, column 0

m01: number

Element at row 0, column 1

m02: number

Element at row 0, column 2

m10: number

Element at row 1, column 0

m11: number

Element at row 1, column 1

m12: number

Element at row 1, column 2

m20: number

Element at row 2, column 0

m21: number

Element at row 2, column 1

m22: number

Element at row 2, column 2

Methods

  • Swaps two elements in the internal array.

    Parameters

    • l: number

      Left index

    • r: number

      Right index

    Returns void

  • Gets the value at the specified row and column.

    Parameters

    • row_i: number

      Row index (0-based)

    • column_i: number

      Column index (0-based)

    Returns number

    Value at the specified position

  • Flattens the matrix into a plain JavaScript array.

    Returns number[]

    Array containing all matrix elements

  • Checks if this is a dummy/placeholder matrix.

    Returns boolean

    True if this is a dummy matrix

  • Checks if this matrix is approximately equal to another matrix.

    Parameters

    • mat: IMatrix33

      Matrix to compare against

    • Optionaldelta: number

      Optional tolerance for comparison (default: small epsilon)

    Returns boolean

    True if matrices are approximately equal

  • Checks if this matrix is strictly equal to another matrix.

    Parameters

    Returns boolean

    True if matrices are exactly equal

  • Applies rotations around X, Y, and Z axes in that order.

    Parameters

    • x: number

      Rotation around X-axis in radians

    • y: number

      Rotation around Y-axis in radians

    • z: number

      Rotation around Z-axis in radians

    Returns IMutableMatrix33

    This matrix for method chaining

  • Sets all matrix components from individual values.

    Parameters

    • m00: number

      Element at row 0, column 0

    • m01: number

      Element at row 0, column 1

    • m02: number

      Element at row 0, column 2

    • m10: number

      Element at row 1, column 0

    • m11: number

      Element at row 1, column 1

    • m12: number

      Element at row 1, column 2

    • m20: number

      Element at row 2, column 0

    • m21: number

      Element at row 2, column 1

    • m22: number

      Element at row 2, column 2

    Returns IMutableMatrix33

    This matrix for method chaining

  • Converts the matrix to a string representation.

    Returns string

    String representation of the matrix

  • Converts the matrix to an approximate string representation.

    Returns string

    Approximate string representation with rounded values