Luxar Viewer API Documentation - v2026.9.22
    Preparing search index...
    interface TrackedWorkerHandle {
        api: Remote<
            {
                initialize: (
                    wasmPath?: string,
                    wasmModule?: Module,
                ) => Promise<WorkerInitResult>;
                decodeQuantized: (
                    p: {
                        data: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                        bounds: [number, number];
                        dtype: "uint8" | "uint16";
                    },
                ) => Promise<Float32Array<ArrayBufferLike>>;
                decodeLogScalar: (
                    p: {
                        data: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                        maxLog: number;
                        dtype: "uint8" | "uint16";
                    },
                ) => Promise<Float32Array<ArrayBufferLike>>;
                decodeGeologScalar: (
                    p: {
                        data: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                        minLog: number;
                        maxLog: number;
                        dtype: "uint8" | "uint16";
                    },
                ) => Promise<Float32Array<ArrayBufferLike>>;
                decodePerChannel: (
                    p: {
                        data: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                        kind: PerChannelKind;
                        colLo: Float64Array;
                        colHi: Float64Array;
                        zeroLevel: boolean;
                        colOffset: number;
                        bits: 8 | 16;
                    },
                ) => Promise<Float32Array<ArrayBufferLike>>;
                decodeLUT: (
                    p: {
                        indices: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                        lut: number[];
                        k: number;
                        lutMode: "row" | "scalar";
                        dtype?: "uint8" | "uint16";
                    },
                ) => Promise<Float32Array<ArrayBufferLike>>;
                decodeBroadcasted: (
                    p: {
                        value: Float32Array;
                        numPoints: number;
                        elementsPerPoint: number;
                    },
                ) => Promise<Float32Array<ArrayBufferLike>>;
                projectLinesTo3D: (
                    p: {
                        positions: Float32Array;
                        segments: Uint32Array;
                        widths: Float32Array;
                        colors:
                            | Uint8Array<ArrayBufferLike>
                            | Float32Array<ArrayBufferLike>
                            | Uint16Array<ArrayBufferLike>
                            | null;
                        sharpness: Float32Array<ArrayBufferLike> | null;
                        scalars:
                            | Uint8Array<ArrayBufferLike>
                            | Float32Array<ArrayBufferLike>
                            | Float16Array<ArrayBufferLike>
                            | null;
                        viewState: ProjectionViewState;
                        ndim: number;
                        segmentCount: number;
                        colorComponents?: 3 | 4;
                        emitSourceIndices?: boolean;
                    },
                ) => Promise<
                    {
                        startPositions: Float32Array;
                        endPositions: Float32Array;
                        startColors: Float32Array;
                        endColors: Float32Array;
                        startWidths: Float32Array;
                        endWidths: Float32Array;
                        startSharpness: Float32Array;
                        endSharpness: Float32Array;
                        startScalars: Float32Array;
                        endScalars: Float32Array;
                        startAlphas: Float32Array;
                        endAlphas: Float32Array;
                        segmentLengths: Float32Array;
                        startJointCode: Float32Array;
                        endJointCode: Float32Array;
                        visibleSegmentCount: number;
                        bounds?: LinesProjectionBounds;
                        sourceSegmentIndices?: Uint32Array<ArrayBufferLike>;
                    },
                >;
                projectGSplatsTo3D: (
                    p: {
                        positions: Float32Array;
                        choleskyFactors: Float32Array;
                        amplitudes: Float32Array;
                        colors:
                            | Uint8Array<ArrayBufferLike>
                            | Float32Array<ArrayBufferLike>
                            | Uint16Array<ArrayBufferLike>
                            | null;
                        sharpness: Float32Array<ArrayBufferLike> | null;
                        viewState: ProjectionViewState;
                        ndim: number;
                        splatCount: number;
                        discreteDims?: readonly number[];
                        discreteSteps?: Record<number, number>;
                        extendToAllDims?: readonly number[];
                        truncate?: number;
                        colorComponents?: 3 | 4;
                        emitSourceIndices?: boolean;
                    },
                ) => Promise<
                    {
                        centers3D: Float32Array;
                        choleskyFactors3D: Float32Array;
                        amplitudes: Float32Array;
                        colors: Float32Array;
                        visibleCount: number;
                        bounds?: GSplatsProjectionBounds;
                        sourceIndices?: Uint32Array<ArrayBufferLike>;
                    },
                >;
            },
        >;
        worker: Worker;
        markQueryStart: () => void;
        markQueryEnd: () => void;
    }
    Index
    api: Remote<
        {
            initialize: (
                wasmPath?: string,
                wasmModule?: Module,
            ) => Promise<WorkerInitResult>;
            decodeQuantized: (
                p: {
                    data: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                    bounds: [number, number];
                    dtype: "uint8" | "uint16";
                },
            ) => Promise<Float32Array<ArrayBufferLike>>;
            decodeLogScalar: (
                p: {
                    data: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                    maxLog: number;
                    dtype: "uint8" | "uint16";
                },
            ) => Promise<Float32Array<ArrayBufferLike>>;
            decodeGeologScalar: (
                p: {
                    data: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                    minLog: number;
                    maxLog: number;
                    dtype: "uint8" | "uint16";
                },
            ) => Promise<Float32Array<ArrayBufferLike>>;
            decodePerChannel: (
                p: {
                    data: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                    kind: PerChannelKind;
                    colLo: Float64Array;
                    colHi: Float64Array;
                    zeroLevel: boolean;
                    colOffset: number;
                    bits: 8 | 16;
                },
            ) => Promise<Float32Array<ArrayBufferLike>>;
            decodeLUT: (
                p: {
                    indices: Uint8Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike>;
                    lut: number[];
                    k: number;
                    lutMode: "row" | "scalar";
                    dtype?: "uint8" | "uint16";
                },
            ) => Promise<Float32Array<ArrayBufferLike>>;
            decodeBroadcasted: (
                p: {
                    value: Float32Array;
                    numPoints: number;
                    elementsPerPoint: number;
                },
            ) => Promise<Float32Array<ArrayBufferLike>>;
            projectLinesTo3D: (
                p: {
                    positions: Float32Array;
                    segments: Uint32Array;
                    widths: Float32Array;
                    colors:
                        | Uint8Array<ArrayBufferLike>
                        | Float32Array<ArrayBufferLike>
                        | Uint16Array<ArrayBufferLike>
                        | null;
                    sharpness: Float32Array<ArrayBufferLike> | null;
                    scalars:
                        | Uint8Array<ArrayBufferLike>
                        | Float32Array<ArrayBufferLike>
                        | Float16Array<ArrayBufferLike>
                        | null;
                    viewState: ProjectionViewState;
                    ndim: number;
                    segmentCount: number;
                    colorComponents?: 3 | 4;
                    emitSourceIndices?: boolean;
                },
            ) => Promise<
                {
                    startPositions: Float32Array;
                    endPositions: Float32Array;
                    startColors: Float32Array;
                    endColors: Float32Array;
                    startWidths: Float32Array;
                    endWidths: Float32Array;
                    startSharpness: Float32Array;
                    endSharpness: Float32Array;
                    startScalars: Float32Array;
                    endScalars: Float32Array;
                    startAlphas: Float32Array;
                    endAlphas: Float32Array;
                    segmentLengths: Float32Array;
                    startJointCode: Float32Array;
                    endJointCode: Float32Array;
                    visibleSegmentCount: number;
                    bounds?: LinesProjectionBounds;
                    sourceSegmentIndices?: Uint32Array<ArrayBufferLike>;
                },
            >;
            projectGSplatsTo3D: (
                p: {
                    positions: Float32Array;
                    choleskyFactors: Float32Array;
                    amplitudes: Float32Array;
                    colors:
                        | Uint8Array<ArrayBufferLike>
                        | Float32Array<ArrayBufferLike>
                        | Uint16Array<ArrayBufferLike>
                        | null;
                    sharpness: Float32Array<ArrayBufferLike> | null;
                    viewState: ProjectionViewState;
                    ndim: number;
                    splatCount: number;
                    discreteDims?: readonly number[];
                    discreteSteps?: Record<number, number>;
                    extendToAllDims?: readonly number[];
                    truncate?: number;
                    colorComponents?: 3 | 4;
                    emitSourceIndices?: boolean;
                },
            ) => Promise<
                {
                    centers3D: Float32Array;
                    choleskyFactors3D: Float32Array;
                    amplitudes: Float32Array;
                    colors: Float32Array;
                    visibleCount: number;
                    bounds?: GSplatsProjectionBounds;
                    sourceIndices?: Uint32Array<ArrayBufferLike>;
                },
            >;
        },
    >
    worker: Worker
    markQueryStart: () => void
    markQueryEnd: () => void