Luxar Viewer API Documentation - v2026.9.22
    Preparing search index...

    The framing knobs in effect for this demo, mirroring the manifest fields of the same names (see DemoEntry in generate-gallery.spec.ts). They decide WHICH knob the warning points at: the three framing PATHS (distance, baked, closed-loop fill) are mutually exclusive in the harness, but the zoom nudge is applied after ALL of them, so it can compound any of the three.

    interface CropFraming {
        fillTarget: number;
        zoom?: number;
        distance?: number;
        autoFrame?: boolean;
    }
    Index
    fillTarget: number

    The fill target the closed-loop fill used — or would have used, since the harness fills this in (demo.fillTarget ?? FILL_TARGET) on every path, including the ones that bypass the fill. Already defaulted by the caller, so this module needs no copy of the harness's FILL_TARGET.

    zoom?: number

    Per-demo zoom nudge applied AFTER the framing path (>1 = closer).

    distance?: number

    Absolute camera distance; when set, the closed-loop fill was bypassed.

    autoFrame?: boolean

    false means the fill loop was skipped and framing is whatever F gave: the scene's authored viewer_config camera when it has one, else a plain bounds fit. UNDEFINED is the common case (most manifest demos omit it) and means the closed-loop fill DID run — so this must be tested against false explicitly, never for falsiness.