BoxVolume

This interfaces provides functions for working with BoxVolumes. BoxVolumes are Axis Aligned Bounding Boxes (AABB) and describe the minimal Bounding Box of a Node. They consist of six values, 3 for the minimum and 3 for the maximum corner.

interface BoxVolume {
    contains(other: BoxVolume): boolean;
    copy(other: BoxVolume): void;
    equals(other: BoxVolume): boolean;
    extend(
        newMin: Float32Array<ArrayBufferLike> | [number, number, number],
        newMax: Float32Array<ArrayBufferLike> | [number, number, number],
    ): void;
    extendByTransformedVolume(
        other: BoxVolume,
        transform?:
            | Float32Array<ArrayBufferLike>
            | [
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
            ],
    ): void;
    extendByVolume(other: BoxVolume): void;
    fromArray(array: number[] | Float32Array<ArrayBufferLike>): boolean;
    getCenter(): Float32Array<ArrayBufferLike>;
    getCornerPoints(): Float32Array<ArrayBufferLike>[];
    getDiameter(): number;
    getMax(): Float32Array<ArrayBufferLike>;
    getMin(): Float32Array<ArrayBufferLike>;
    getRadialVec(): Float32Array<ArrayBufferLike>;
    getSize(): Float32Array<ArrayBufferLike>;
    includePoint(p: Float32Array<ArrayBufferLike>): void;
    isValid(): boolean;
    overlaps(other: BoxVolume): boolean;
    reset(): void;
    setFromCenterSize(
        center: Float32Array<ArrayBufferLike> | [number, number, number],
        size: Float32Array<ArrayBufferLike> | [number, number, number],
    ): BoxVolume;
    setMax(max: Float32Array<ArrayBufferLike> | [number, number, number]): void;
    setMin(min: Float32Array<ArrayBufferLike> | [number, number, number]): void;
    setValid(valid?: boolean): void;
    transformFrom(
        matrix:
            | Float32Array<ArrayBufferLike>
            | [
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
            ],
        other: BoxVolume,
    ): BoxVolume;
    transformFromArray(
        matrix:
            | Float32Array<ArrayBufferLike>
            | [
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
                number,
            ],
        otherVolume: number[],
    ): BoxVolume;
}

Methods

  • Returns true if the given BoxVolume contains the other BoxVolume.

    Parameters

    Returns boolean

  • Returns true if the given BoxVolume equals the other BoxVolume.

    Parameters

    Returns boolean

  • Parameters

    • newMin: Float32Array<ArrayBufferLike> | [number, number, number]
    • newMax: Float32Array<ArrayBufferLike> | [number, number, number]

    Returns void

  • Parameters

    • other: BoxVolume
    • Optionaltransform:
          | Float32Array<ArrayBufferLike>
          | [
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
          ]

    Returns void

  • Extends a BoxVolume by another BoxVolume. The resulting BoxVolume will span over the other BoxVolume too.

    Parameters

    Returns void

  • Creates a BoxVolume from an array.

    Parameters

    • array: number[] | Float32Array<ArrayBufferLike>

      the number array with 6 values

    Returns boolean

  • Returns the center of the BoxVolume.

    Returns Float32Array<ArrayBufferLike>

  • Returns the corner points of a BoxVolume.

    Returns Float32Array<ArrayBufferLike>[]

  • Returns number

  • Returns the maximum of the BoxVolume.

    Returns Float32Array<ArrayBufferLike>

  • Returns the minimum of the BoxVolume.

    Returns Float32Array<ArrayBufferLike>

  • Returns Float32Array<ArrayBufferLike>

  • Returns the size of the BoxVolume.

    Returns Float32Array<ArrayBufferLike>

  • Parameters

    • p: Float32Array<ArrayBufferLike>

    Returns void

  • Returns true, if the BoxVolume is valid.

    Returns boolean

  • Returns true if two BoxVolumes are overlapping.

    Parameters

    Returns boolean

  • Returns void

  • Parameters

    • center: Float32Array<ArrayBufferLike> | [number, number, number]
    • size: Float32Array<ArrayBufferLike> | [number, number, number]

    Returns BoxVolume

  • Parameters

    • max: Float32Array<ArrayBufferLike> | [number, number, number]

    Returns void

  • Parameters

    • min: Float32Array<ArrayBufferLike> | [number, number, number]

    Returns void

  • Parameters

    • Optionalvalid: boolean

    Returns void

  • Parameters

    • matrix:
          | Float32Array<ArrayBufferLike>
          | [
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
          ]
    • other: BoxVolume

    Returns BoxVolume

  • Parameters

    • matrix:
          | Float32Array<ArrayBufferLike>
          | [
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
              number,
          ]
    • otherVolume: number[]

    Returns BoxVolume


Did you find this page useful? Please give it a rating:
Thank you for rating this page!
Any issues or feedback?
What kind of problem would you like to report?
Please tell us more about what's wrong: