rhodonite
    Preparing search index...

    Class Scalard

    Immutable scalar class using 64-bit floating-point precision. Provides higher precision than the standard Scalar class for applications requiring double-precision arithmetic.

    Hierarchy (View Summary)

    • Scalar_<Float64ArrayConstructor>
      • Scalard
    Index

    Constructors

    Properties

    _v: TypedArray = ...

    Internal typed array storage for vector components

    Accessors

    • get bytesPerComponent(): number

      Gets the number of bytes per component in the underlying typed array.

      Returns number

      The number of bytes per element

    • get className(): string

      Gets the class name of this vector instance.

      Returns string

      The constructor name of the class

    • get glslStrAsFloat(): string

      Gets the scalar value as a GLSL-compatible float string.

      Returns string

      The scalar value formatted as a GLSL float literal

    • get glslStrAsInt(): string

      Gets the scalar value as a GLSL-compatible integer string.

      Returns string

      The scalar value formatted as a GLSL integer literal

    • get glslStrAsUint(): string

      Gets the scalar value as a GLSL-compatible unsigned integer string.

      Returns string

      The scalar value formatted as a GLSL unsigned integer literal with 'u' suffix

    • get wgslStrAsFloat(): string

      Gets the scalar value as a WGSL-compatible float string.

      Returns string

      The scalar value formatted as a WGSL float literal

    • get wgslStrAsInt(): string

      Gets the scalar value as a WGSL-compatible integer string.

      Returns string

      The scalar value formatted as a WGSL integer literal

    • get wgslStrAsUint(): string

      Gets the scalar value as a WGSL-compatible unsigned integer string.

      Returns string

      The scalar value formatted as a WGSL unsigned integer literal with 'u' suffix

    • get x(): number

      Gets the scalar value (alias for x component).

      Returns number

      The scalar value

    Methods

    • Gets the component value at the specified index.

      Parameters

      • i: number

        The index of the component to retrieve

      Returns number

      The component value at the given index

    • Checks if this vector is a dummy (empty) vector. A dummy vector has no components and is typically used as a placeholder.

      Returns boolean

      True if the vector is dummy, false otherwise

    • Performs approximate equality comparison with another scalar within a tolerance.

      Parameters

      • scalar: Scalar_<Float64ArrayConstructor>

        The scalar to compare with

      • delta: number = Number.EPSILON

        The tolerance for comparison (default: Number.EPSILON)

      Returns boolean

      True if the scalars are equal within the specified tolerance

    • Performs strict equality comparison with another scalar. Uses exact floating-point comparison without tolerance.

      Parameters

      • scalar: Scalar_<Float64ArrayConstructor>

        The scalar to compare with

      Returns boolean

      True if the scalars are exactly equal, false otherwise

    • Checks if the internal storage shares the same ArrayBuffer as the provided one. Useful for determining if vectors share underlying memory.

      Parameters

      • arrayBuffer: ArrayBuffer

        The ArrayBuffer to compare against

      Returns boolean

      True if the same ArrayBuffer is used, false otherwise

    • Calculates the squared length of the vector. This is more efficient than length() when only relative comparisons are needed.

      Returns number

      The squared length of the vector

      Error - Must be implemented by subclasses

    • Converts the vector to an approximate string representation. Useful for debugging when exact precision is not required.

      Returns string

      Approximate string representation of the vector

      Error - Must be implemented by subclasses

    • Gets the component value at the specified index. Alias for the at() method for convenience.

      Parameters

      • i: number

        The index of the component to retrieve

      Returns number

      The component value at the given index

    • Creates a new double-precision scalar from a numeric value.

      Parameters

      • value: number

        The numeric value to create the scalar from

      Returns Scalard

      A new Scalard instance