Initial commit: DOSSIER Hugo website

This commit is contained in:
2026-05-26 11:23:18 +02:00
commit 53c0532f60
417 changed files with 32891 additions and 0 deletions
+96
View File
@@ -0,0 +1,96 @@
---
title: Geschosse & Ebenen
linkTitle: Geschosse
weight: 1
---
Das **EBENEN**-Panel ist die zentrale Projekt-Struktur. Geschosse mit Name, Höhe und OKFF definieren — Dossier baut die komplette Layer-Hierarchie automatisch auf.
## Geschoss-Definition
Jedes Geschoss trägt:
| Feld | Beschreibung |
|--------|-------------------------------------------------------|
| Name | `UG`, `EG`, `1OG`, `2OG`, `DG`, … (frei wählbar) |
| Höhe | Lichte Höhe in mm |
| OKFF | Oberkante Fertigfussboden, absolut in mm |
| Typ | Vollgeschoss · Untergeschoss · Dachgeschoss · Attika |
Gespeichert als JSON in `doc.Strings["dossier_ebenen"]` — bleibt in der `.3dm` erhalten.
## Layer-Hierarchie
Aus den Geschossen baut Dossier diese Struktur:
```text
10_GRUNDRISSE
├── EG
│ ├── 20_WAENDE
│ ├── 30_DECKEN
│ ├── 31_DAECHER
│ └── 40_TREPPEN
├── 1OG (gleiche Sublayer)
└── 2OG
20_SCHNITTE
30_ANSICHTEN
00_RASTER
01_VERMESSUNG
40_SITUATION
90_REFERENZEN
99_KONSTRUKTION
```
Wird ein neues Geschoss angelegt, werden die Sublayer automatisch nachgezogen (`layer_builder.py`).
## Presets
Häufige Konstellationen sind als Presets verfügbar:
- **Einfamilienhaus** — UG / EG / OG / DG
- **Mehrfamilienhaus** — UG / EG / 1OG / 2OG / 3OG / DG
- **Gewerbe** — TG / EG / 1OG / 2OG
Eigene Presets können gespeichert und projektübergreifend wiederverwendet werden.
## Aktives Geschoss
Das aktive Geschoss bestimmt, auf welchem Layer neue Smart-Elemente landen. Wechsel über das Drop-Down im EBENEN-Panel oder über die OBERLEISTE.
## Multi-Geschoss-Clipping
Beim Editieren eines Geschosses werden alle darüberliegenden Geschosse automatisch geclippt — sichtbar ist nur das aktive plus optional die unmittelbar darunterliegenden Etagen als Referenz. Die Clipping-Planes sitzen exakt auf OKFF + Geschoss-Höhe und folgen jeder Höhen-Änderung sofort.
Modi:
- **Aktiv only** — nur das gewählte Geschoss
- **Aktiv + Darunter** — mit der nächst tieferen Etage als Kontext (Standard)
- **Alle** — Multi-Geschoss-Stack ohne Clipping
Toggle über die OBERLEISTE oder per Shortcut. Clipping ist viewport-spezifisch — Schnittansichten bleiben unberührt.
## Top-View Z-Guard
In der Top-View werden Smart-Elemente versehentlich gerne mit Z-Offset verschoben. Der **Z-Guard** fängt das ab: bei Move/Drag-Operationen aus der Top-View wird die Z-Komponente auf 0 (relativ zum aktiven Geschoss-OKFF) gezwungen, ausser der User hält explizit eine Modifier-Taste. Das verhindert die typischen "warum schwebt jetzt meine Wand"-Fehler.
## Snap-Bar pro Geschoss
Eigene Snap-Targets pro Geschoss werden im EBENEN-Panel über die **Snap-Bar** verwaltet:
- **OKFF-Linien** — pro Geschoss als horizontale Endlos-Snaps
- **Achs-Lines** — Tragwerk-Achsen als geteilte Referenz
- **Polyline-Knoten** — automatisch aus den Wand-Polylines abgeleitet
Snaps werden viewport-bezogen registriert und beim Geschoss-Wechsel automatisch ein-/ausgeblendet. Spart Rhinos OSnap-Slot für andere Workflows.
{{< callout type="info" >}}
Code-Identifier verwenden **ASCII-Schreibweise** (`UG`, `OG`, `DG`) — UI darf Umlaute, Layer-Codes nicht. Das ist eine bewusste Konvention seit der CPython-3-Migration.
{{< /callout >}}
## Cross-Module-Verhalten
Wenn Geschoss-Höhen oder OKFF im EBENEN-Panel geändert werden:
1. `rhinopanel.py` schreibt die neuen Werte in `doc.Strings`
2. `elemente_bridge._regenerate_all()` wird über Sticky-Reference getriggert
3. Alle Wand- und Decken-Volumen regenerieren automatisch