Class MutableColorRgb

A mutable RGB color class that extends MutableVector3. Represents a color with red, green, and blue components, with alpha always set to 1. This class provides both vector-based operations and color-specific accessors.

Hierarchy (view full)

Implements

Constructors

Properties

_v: TypedArray = ...

Internal typed array storage for vector components

Accessors

  • get glslStrAsInt(): string
  • Gets the GLSL representation of this vector as an integer ivec3.

    Returns string

    A string representation suitable for GLSL shaders with integer components

  • get wgslStrAsInt(): string
  • Gets the WGSL representation of this vector as an integer vec3i.

    Returns string

    A string representation suitable for WGSL shaders with integer components

  • get compositionType(): CompositionTypeClass<"VEC3">
  • Gets the composition type for this vector class.

    Returns CompositionTypeClass<"VEC3">

    The composition type (Vec3)

Methods

  • Checks if this vector is approximately equal to another vector within a tolerance.

    Parameters

    • vec: IVector3

      The vector to compare with

    • delta: number = Number.EPSILON

      The tolerance for comparison (default: Number.EPSILON)

    Returns boolean

    True if vectors are approximately equal, false otherwise

  • Calculates the squared length of a vector (static version). This is more efficient than calculating the actual length when only comparison is needed.

    Parameters

    • vec: IVector3

      The vector to calculate squared length for

    Returns number

    The squared length of the vector

  • Rotates a vector around the X-axis and stores the result in the output vector. Only the Y and Z components are affected by X-axis rotation.

    Parameters

    • vec3: IVector3

      The input vector to rotate

    • radian: number

      The rotation angle in radians

    • outVec: MutableVector3

      The output vector to store the result

    Returns void

  • Rotates a vector around the Y-axis and stores the result in the output vector. Only the X and Z components are affected by Y-axis rotation.

    Parameters

    • vec3: IVector3

      The input vector to rotate

    • radian: number

      The rotation angle in radians

    • outVec: MutableVector3

      The output vector to store the result

    Returns void

  • Rotates a vector around the Z-axis and stores the result in the output vector. Only the X and Y components are affected by Z-axis rotation.

    Parameters

    • vec3: IVector3

      The input vector to rotate

    • radian: number

      The rotation angle in radians

    • outVec: MutableVector3

      The output vector to store the result

    Returns void