Files
DOSSIER-STANDALONE/src/section/occt-wasm.d.ts
T
karim 3d2d4d6321 2D-Plan-Renderer auf WebGL2 (GPU) + akkumulierter Funktionsstand
Neuer GPU-Renderer fuer den Grundriss (src/plan/glPlan/): Earcut-Tessellierung
(konkav-faehig), gehrte Linienzuege (Miter), echte Papier-mm-Strichbreiten im
Massstab (repliziert den SVG-printStrokeVb-Pfad), Hybrid mit scharfem SVG-Text-
Overlay. GPU ist der Standardpfad; der SVG-Renderer bleibt automatischer Fallback,
falls WebGL2/Shader nicht verfuegbar sind. Imperativer Pan (rAF + CSS-transform)
fuer fluessige Interaktion ohne React-Re-Render je Frame.

Enthaelt zudem den bisher nicht committeten Arbeitsstand des Browser-BIM
(Oeffnungen, Treppen, Raeume, Decken, DXF-Export, Materialbibliothek, Kontext-
Import, Tauri-Compute-Boundary-PoC).
2026-07-02 00:12:39 +02:00

26 lines
1.1 KiB
TypeScript

// Ambient-Deklarationen für die WASM-Glue-/Asset-Importe von opencascade.js
// (Welle-C-Spike: Hidden-Line-Removal). Analog zu `src/io/libredwg-web.d.ts`:
// das Paket liefert seine `dist/`-Dateien nicht über sinnvolle `exports`, daher
// laden wir Emscripten-Glue + `.wasm`-URL über zwei virtuelle Module (Aliase in
// vite.config.ts → echte Dateien im Paket). Hier nur schmale Modul-Stubs.
// (Identifier englisch, Kommentare deutsch — CONVENTIONS.md.)
declare module "virtual:occt-glue" {
/**
* Emscripten-Modul-Fabrik von opencascade.js. Nimmt Modul-Overrides
* (u. a. `locateFile`, um die `.wasm`-URL aufzulösen) und liefert das
* initialisierte Modul (das gesamte OCCT-Binding als `unknown`).
*/
const createModule: (opts?: {
locateFile?: (filename: string, scriptDir: string) => string;
wasmBinary?: ArrayBuffer | Uint8Array;
}) => Promise<unknown>;
export default createModule;
}
declare module "virtual:occt-wasm-url" {
/** Von Vite aufgelöste URL der `.wasm`-Datei (gehashtes Asset im Build). */
const url: string;
export default url;
}