brepjs API Reference
    Preparing search index...

    Interface MeshLODsProgressiveOptions

    Options for meshLODsProgressive.

    interface MeshLODsProgressiveOptions {
        angularTolerance?: number;
        cache?: boolean;
        levels?: number;
        meshLevel?: MeshLevelFn;
        onLevel?: (level: LODMesh, index: number) => void;
        relativeTolerance?: number;
        signal?: AbortSignal;
        spacing?: number;
        tolerances?: readonly number[];
    }

    Hierarchy (View Summary)

    Index

    Properties

    angularTolerance?: number

    The finest level's angular deflection (radians). Defaults to the active quality level; coarser levels scale up with the tolerance ratio (capped at 1 rad).

    cache?: boolean

    Whether to use the mesh cache per level. Default true.

    levels?: number

    Number of levels, coarsest → finest (>= 1). Default 3. Ignored when tolerances is given.

    meshLevel?: MeshLevelFn

    How to mesh one level. Defaults to the synchronous main-thread mesh.

    onLevel?: (level: LODMesh, index: number) => void

    Called as each level finishes, coarsest first, so a viewer can show the coarse preview immediately and swap in finer meshes as they arrive.

    relativeTolerance?: number

    The finest level's linear tolerance as a fraction of the shape's bounding-box diagonal, so detail is scale-invariant across part sizes. Default 0.0005 (0.05% of the diagonal). Ignored when tolerances is given.

    signal?: AbortSignal

    Abort signal forwarded to each level's mesh call.

    spacing?: number

    Geometric ratio between successive levels: each coarser level's tolerance is spacing× the next finer one. Default 4. Ignored when tolerances is given.

    tolerances?: readonly number[]

    Explicit absolute linear tolerances (one per level). Overrides levels/relativeTolerance/spacing; sorted coarse → fine.