mirror of
https://github.com/flash555588/ai-model-workbench.git
synced 2026-07-22 17:30:25 +00:00
Add load interruption handling, camera zoom controls, refreshed measurement UI, diagnostics/default-route coverage, and aligned docs for the Babylon-default renderer contract.
25 lines
863 B
TypeScript
25 lines
863 B
TypeScript
import type { GridBlockConfig, ModelConfig, PresetResult } from "../../domain/models";
|
|
import type { CameraZoomPreview } from "./types";
|
|
|
|
export interface PreviewGridRenderer extends CameraZoomPreview {
|
|
loadModels(
|
|
models: ModelConfig[],
|
|
config: GridBlockConfig,
|
|
readFile: (path: string) => Promise<ArrayBuffer>,
|
|
): Promise<void>;
|
|
loadWithPreset(
|
|
result: PresetResult,
|
|
readFile: (path: string) => Promise<ArrayBuffer>,
|
|
): Promise<void>;
|
|
captureSnapshot(): string | null;
|
|
setRenderScale(scale: number): number;
|
|
resetView(): void;
|
|
toggleWireframe(): boolean;
|
|
exportModelInfo(): string;
|
|
destroy(): void;
|
|
}
|
|
|
|
export async function createGridRenderer(canvas: HTMLCanvasElement): Promise<PreviewGridRenderer> {
|
|
const { createBabylonGridRenderer } = await import("../babylon/grid");
|
|
return createBabylonGridRenderer(canvas);
|
|
}
|