c0a5de194f
- Move Display-Mode "Dossier Plan" to shipped; describe walls as multilayer with T-/L-/X-joints and Sturz/Brüstung openings; expand stairs depth and configurable 2D plan display - Drop BIM framing and identity-by-negation throughout - Replace named CAD product comparisons with generic phrasing - Remove unsupported "6+ months in production" claim - Use "Python 3.9" instead of "CPython 3.9" in user-facing copy - Rename "Tauri-Launcher" card to "Launcher" and drop sparkles icon Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
102 lines
4.2 KiB
Markdown
102 lines
4.2 KiB
Markdown
---
|
||
title: Symbol-Library
|
||
linkTitle: Symbol-Library
|
||
weight: 6
|
||
---
|
||
|
||
Die Symbol-Library lebt im **PROJECT-SETTINGS**-Tab "Symbole" und macht ein klassisches Architekturbüro-Problem zentral verwaltbar: Möbel, Sanitär-Apparate, Bäume, Autos, technische Symbole — überall im Modell, aber konsistent in der Darstellung.
|
||
|
||
## 2D+3D Pair-Files
|
||
|
||
Jedes Symbol besteht aus zwei verknüpften Files:
|
||
|
||
```text
|
||
sofa-3sitz.3dm — 3D-Modell (Block-Definition)
|
||
sofa-3sitz.2d.3dm — 2D-Plandarstellung (Block-Definition)
|
||
```
|
||
|
||
Beim Plazieren entscheidet der View-Type:
|
||
|
||
- **3D-View / Perspektive** → 3D-File wird verwendet
|
||
- **Top-View im Grundriss** → 2D-File wird verwendet
|
||
- **Section-Plane aktiv** → Section-Cut wird aus dem 3D-File abgeleitet
|
||
|
||
So bleibt ein Sofa im Schnitt eine sauber gezeichnete 2D-Plandarstellung, in der Visualisierung aber ein vollständiges 3D-Möbel.
|
||
|
||
## Satellite-Picker
|
||
|
||
Statt Symbole in einem schwergewichtigen Browser zu suchen, öffnet DOSSIER einen **Satellite-Picker** — ein eigenständiges, kleines Fenster mit Live-Thumbnails:
|
||
|
||
- Floating-Window neben dem Modellraum
|
||
- Filter nach Kategorie (Möbel · Sanitär · Vegetation · Verkehr · …)
|
||
- Klick auf Thumbnail → Symbol wird in Rhino plaziert (Drag-Place)
|
||
- Mehrfach-Plazierung in Serie ohne Picker zu schliessen
|
||
|
||
Bleibt offen während aktivem Modell-Edit — typischer Workflow für Wohnungs-Möblierung.
|
||
|
||
## Multi-Format-Import
|
||
|
||
Symbole müssen nicht in `.3dm` vorliegen. CRUD im PROJECT-SETTINGS-Symbole-Tab unterstützt:
|
||
|
||
| Format | Verwendung |
|
||
|--------------|-----------------------------------------------------|
|
||
| `.3dm` | Rhino-native (Pair-Files werden so behandelt) |
|
||
| `.dwg` | Möbel- und Sanitärbibliotheken aus dem Industriestandard |
|
||
| `.obj` | Generische 3D-Modelle aus 3D-Asset-Libraries |
|
||
| `.fbx` | 3D-Modelle aus DCC-Tools |
|
||
| `.dae` | Collada — Mesh- und Szenen-Austauschformat |
|
||
| `.stl` | Mesh-only — Grobgeometrie |
|
||
|
||
Beim Import wird das File in den projektbezogenen `symbols/`-Ordner kopiert, ein Block in der Rhino-Block-Tabelle registriert und das Thumbnail generiert.
|
||
|
||
## Auto-Thumbnails (Base64-PNG)
|
||
|
||
Thumbnails werden **automatisch** beim Import erzeugt:
|
||
|
||
1. Symbol wird headless in einer 256×256-Viewport gerendert
|
||
2. Iso-Ansicht für 3D-Files, Top-Ansicht für 2D-Files
|
||
3. PNG wird als **Base64-String** in die `dossier.project.json` geschrieben
|
||
|
||
Vorteil von Base64: Thumbnails sind teil der Projekt-Konfiguration — der Satellite-Picker kann sie ohne File-IO im Hintergrund anzeigen, und Library-Sharing wird trivial (Config kopieren = Thumbnails mitkopiert).
|
||
|
||
Cache-Größe pro Symbol typisch 4–12 KB.
|
||
|
||
## CRUD-Operationen
|
||
|
||
Volle Verwaltung im PROJECT-SETTINGS-Symbole-Tab:
|
||
|
||
- **Create** — Import-Button öffnet File-Picker, Format wird auto-detected
|
||
- **Read** — Liste mit Thumbnails, Filter nach Kategorie, Suche im Namen
|
||
- **Update** — Symbol-Eigenschaften (Name, Kategorie, 2D-Pair zuordnen) editieren
|
||
- **Delete** — Block-Definition aus Rhino entfernen, File aus `symbols/`-Ordner löschen, JSON-Eintrag entfernen
|
||
|
||
Lösch-Operation prüft, ob das Symbol im Modell verwendet wird, und bietet Replace-Optionen statt blockierender Hard-Delete.
|
||
|
||
## Datenhaltung
|
||
|
||
```text
|
||
projekt-ordner/
|
||
├── projekt.3dm
|
||
├── dossier.project.json
|
||
│ └── symbols: [
|
||
│ { id: "sofa-3sitz", name: "Sofa 3-Sitz",
|
||
│ file_3d: "symbols/sofa-3sitz.3dm",
|
||
│ file_2d: "symbols/sofa-3sitz.2d.3dm",
|
||
│ thumbnail: "data:image/png;base64,iVBORw0KGgo...",
|
||
│ category: "moebel" }
|
||
│ ]
|
||
└── symbols/
|
||
├── sofa-3sitz.3dm
|
||
├── sofa-3sitz.2d.3dm
|
||
├── tisch-esstisch.3dm
|
||
└── …
|
||
```
|
||
|
||
Symbol-Files relativ referenziert — Projekt verschieben = Symbole ziehen mit.
|
||
|
||
## Roadmap
|
||
|
||
**Library Phase C** (geplant): Cloud-Sync via GitHub-Releases — Team-Sharing einer projektübergreifenden Symbol-Library mit semantischer Versionierung. Siehe [Roadmap](../../docs/roadmap).
|
||
|
||
**Satellite-Windows-Restyle** (geplant): alle Satellite-Windows (Symbol-Picker, Material-Picker, …) im einheitlichen Pill-Style. Siehe [Roadmap](../../docs/roadmap).
|