Spaces:
Running
Running
Download packages/shared/src/generated/dressing-item.ts from Bryan-HSLU/FP_POC: direct link, hf CLI and curl.
- Browser
- Download file 2.75 kB
-
https://huggingface.co/spaces/Bryan-HSLU/FP_POC/resolve/main/packages/shared/src/generated/dressing-item.ts
- Command line
-
hf download hf://spaces/Bryan-HSLU/FP_POC/packages/shared/src/generated/dressing-item.ts
-
curl -L -o dressing-item.ts https://huggingface.co/spaces/Bryan-HSLU/FP_POC/resolve/main/packages/shared/src/generated/dressing-item.ts
2.75 kB
| /* AUTOGENERIERT aus packages/shared/schemas – nicht von Hand ändern (pnpm codegen). */ | |
| export type Uuid = string; | |
| export type Semver = string; | |
| /** | |
| * Scene-Dressing-Objekt (rein visuelle Deko-Ebene, getrennt vom Plan). NICHT solver-/normrelevant: erscheint nie in plan.placements, constraintReport oder LV. Der Client platziert es deterministisch an Ankern, die aus dem bestehenden Plan abgeleitet werden. Box/Primitiv-Platzhalter mit Auto-Upgrade: ohne gltfRef rendert der Viewer prozedurale Primitive aus masse; sobald gltfRef gesetzt und assetStatus=modeled ist, ersetzt das echte glTF den Platzhalter. | |
| */ | |
| export interface DressingItem { | |
| id: Uuid; | |
| schemaVersion: Semver; | |
| name: string; | |
| /** | |
| * @minItems 1 | |
| */ | |
| roomTypes: [ | |
| "bad" | "kueche" | "wohnen" | "schlafen" | "essen" | "flur" | "sonstig", | |
| ...("bad" | "kueche" | "wohnen" | "schlafen" | "essen" | "flur" | "sonstig")[], | |
| ]; | |
| /** | |
| * Objektklasse (Scene-Dressing-Konzept): B leicht kollisionsrelevant (Bodenobjekt, einfache Kollisionsprüfung + Türkorridor) · C visuelle Mid-Objects (an Wand/Möbel gehängt) · D Deko-Cluster (Mikro-Objekte auf Oberflächen). Klasse A bleibt im Katalog/Solver. | |
| */ | |
| klasse: "B" | "C" | "D"; | |
| /** | |
| * Funktionaler Typ des Deko-Objekts – wählt auch den prozeduralen 3D-Bausatz (dressing3d). | |
| */ | |
| funktionsTyp: string; | |
| /** | |
| * Erlaubte Anker: funktionsTypen aus dem Plan (z.B. lavabo, badmoebel, wc) ODER die Schlüsselworte 'wand' bzw. 'ecke'. Ohne passenden Anker im Raum wird das Objekt nicht platziert. | |
| * | |
| * @minItems 1 | |
| */ | |
| anchorTypes: [string, ...string[]]; | |
| /** | |
| * Ankerart: auf_oberflaeche = auf der Oberkante eines Möbels · an_wand = an einer Raumwand · freie_ecke = in einer freien Raumecke (Boden) · an_moebel = neben/an einem Möbel (Boden) · an_decke = an der Decke über einem Möbel-Anker hängend (Oberkante an Deckenhöhe, masse.h = Hängelänge inkl. Schirm). | |
| */ | |
| platzierung: "auf_oberflaeche" | "an_wand" | "freie_ecke" | "an_moebel" | "an_decke"; | |
| masse: { | |
| w: number; | |
| d: number; | |
| h: number; | |
| }; | |
| /** | |
| * Stil-Achsen-Ausprägungen (gleiche Achsen wie Katalog/Stilprofil) für den Stil-Match (stilNaehe). Steuert die stilabhängige Varianten-/Materialwahl. | |
| */ | |
| achsenTags: { | |
| [k: string]: number; | |
| }; | |
| attributTags: string[]; | |
| assetStatus: "placeholder" | "modeled"; | |
| /** | |
| * Dateiname (ohne Endung) eines echten glTF-Binary unter apps/web/public/assets/dressing/<gltfRef>.glb. Nur wirksam bei assetStatus=modeled; sonst rendert der prozedurale Platzhalter. | |
| */ | |
| gltfRef?: string; | |
| /** | |
| * Optionale prozedurale Bausatz-Variante (analog Katalog modell3d). Fehlt sie, greift der Standard-Bausatz des funktionsTyp. | |
| */ | |
| modell3d?: string; | |
| } | |