Interface ModelExportOptions

Options for customizing the export process when exporting a SceneModel and/or a DataModel to a file.

interface ModelExportOptions {
    coordinateSystem?: CoordinateSystemParams;
    ignoreNormals?: boolean;
    ignoreUVs?: boolean;
    onProgress?: (progress: LoaderProgress) => void;
    onWarning?: (message: string) => void;
    signal?: AbortSignal;
    yieldIntervalMs?: number;
    [key: string]: any;
}

Hierarchy (View Summary)

Indexable

  • [key: string]: any

Properties

coordinateSystem?: CoordinateSystemParams

Optional target CoordinateSystem for export. If not provided, the SceneModel's CoordinateSystem will be used.

ignoreNormals?: boolean

When true, exporters should omit vertex normals when the target format can represent the model without them. Exporters may ignore this when normals are unavoidable in the target format.

ignoreUVs?: boolean

When true, exporters should omit texture coordinates when the target format can represent the model without them. Exporters may ignore this when UVs are unavoidable in the target format.

onProgress?: (progress: LoaderProgress) => void

Optional progress callback. Same contract as ModelLoadOptions.onProgress — the exporter fires this from inside its hot loops at ≈60 Hz, paced by the same yieldToHost interval that keeps the main thread responsive.

Exporters may reuse a single object literal across emits to avoid per-yield allocations — copy out fields you need to retain past the synchronous call.

onWarning?: (message: string) => void

Optional callback for conversion-fidelity warnings — non-fatal notes about something the exporter could not faithfully represent and therefore dropped or flattened (for example, triplanar textures omitted because the target format has no world-projected texturing). When omitted, exporters fall back to console.warn. conversion!pipeline.ModelConverter collects these into each output's warnings for the conversion report.

signal?: AbortSignal

Optional AbortSignal. Exporters that have been swept to cooperative-yield check signal.aborted at every yield point and throw a DOMException("Aborted", "AbortError") when the caller cancels. Exporters that pre-date the sweep ignore this field and run to completion.

yieldIntervalMs?: number

Minimum gap (in milliseconds) between cooperative yields during the export. Same contract as ModelLoadOptions.yieldIntervalMs — raise above the 16ms default to trade UI-update frequency for raw export speed on long-running exports.