Skip to content

createGlyphField#getWorldBounds

Summary

createGlyphField#getWorldBounds transforms local bounds by the current world matrix, producing an enclosing world-axis-aligned box while preserving empty/partial status.

Syntax

GlyphField.getWorldBounds(): Bounds3
const result = glyphField.getWorldBounds();

Parameters

This API does not take parameters.

Returns

Bounds3 - Bounds structure containing axis-aligned box and bounding-sphere data.

Type Details

Bounds3

type Bounds3 = {

    boxMin: Vec3;

    boxMax: Vec3;

    sphereCenter: Vec3;

    sphereRadius: number;

    empty: boolean;

    partial: boolean;

};

Bounds3 Fields

Name Type Required Description
boxMin Vec3 Yes Minimum corner of the axis-aligned bounding box.
boxMax Vec3 Yes Maximum corner of the axis-aligned bounding box.
sphereCenter Vec3 Yes Center of the associated bounding sphere.
sphereRadius number Yes Radius of the associated bounding sphere.
empty boolean Yes Whether the bounds contain no geometry.
partial boolean Yes Whether the result omits geometry whose bounds could not be determined.

Vec3

type Vec3 = [number, number, number];

Example

const canvas = document.querySelector("canvas");
const wgpu = await WasmGPU.create(canvas);

const glyphField = wgpu.createGlyphField({ instanceCount: 1, positions: new Float32Array([0, 0, 0, 0]), rotations: new Float32Array([0, 0, 0, 1]), scales: new Float32Array([1, 1, 1, 0]), attributes: new Float32Array([0.5, 0, 0, 0]), scaleTransform: { mode: "linear", domainMin: 0, domainMax: 1 } });
const result = glyphField.getWorldBounds();
console.log(result);

See Also