Files
DOSSIER-WEBSITE/content/features/smart-elemente.md
T

4.1 KiB
Raw Blame History

title, linkTitle, weight
title linkTitle weight
Smart-Elemente Smart-Elemente 2

Smart-Elemente sind parametrische Bauteile mit dem Source ↔ Volume Pattern: eine editierbare Source-Geometrie und ein automatisch generiertes Volumen.

Pattern

Source-Geometrie (vom User editiert)
        │
        ▼  Regeneration bei Change
Volume (Brep, vom Plugin verwaltet)

Wird die Source verschoben oder verformt, regeneriert das Volumen automatisch — Wand-Joints, Decken-Aussparungen und Öffnungs-Cutouts werden mitgeführt.

Bauteil-Typen

Wände (Wand-System v1)

Source Volume
Polyline (mit Bögen) Brep mit Dicke × Höhe, Geschoss-OKFF als Basis

Polyline-Achse statt Einzel-Segmente: Eine Wand ist ein zusammenhängender Polyline-Strang — gerade Teilstrecken, Bogen-Segmente und Knicke gehören zur selben Source. Joints zwischen Polylines werden weiterhin als Miter / T-Junction gerechnet, aber Knicke innerhalb einer Wand brauchen kein eigenes Joint-Setup mehr.

Chain-Anchor: Die Polyline trägt einen stabilen Anker auf einem festgelegten Knoten. Bei Modifikationen am Strang (verschieben, verlängern, Knoten einfügen) bleibt die Wand-Identität an diesem Anker — Material, UserStrings und Joint-Verknüpfungen wandern mit.

Native Rhino-Grips: Knoten der Polyline-Achse erscheinen direkt als Rhino-Grips. Verschieben eines Knotens triggert Volume-Regeneration plus Joint-Re-Calc in einem Idle-Tick — keine separate Edit-Mode-UI nötig.

Cmd+Z stabil: Undo/Redo über alle Joint-Operationen ist garantiert konsistent. Der Joint-Cache wird über die Polyline-Achse rekonstruiert, nicht aus dem stale Pre-Undo-State.

Joint-Cache pro Geschoss (_JOINTS_CACHE_KEY), invalidiert bei Add/Delete und nach Polyline-Edits über den Grip-Handler.

Wand-Typen: Tragwand · Trennwand · Brandwand · Aufschüttung

Material-Cache: Hex → MaterialIndex, stale-Check beim Lesen — der Cache wird beim Material-Delete in Rhino automatisch invalidiert (siehe Materialien).

Decken & Dächer

Source Volume
Outline Brep-Extrusion mit konstanter Stärke, OKFF + Geschoss-Höhe
  • Aussparungen für Schächte als Sekundär-Curves
  • Dächer mit Neigung (Pultdach, Satteldach, Walmdach)

Öffnungen (Fenster / Türen)

Source Volume
Punkt Rahmen + Sims + Flügel, schneidet Wand-Volumen aus
  • Bibliothek mit Standard-Typen (Holz / Aluminium / Kunststoff)
  • Brüstungshöhe und Sturzhöhe pro Element parametrisch
  • Cutout im Wand-Volumen wird automatisch nachgeführt

Treppen

Geometrie-Typen:

  • Gerade Treppe — Anfangs-/Endpunkt, Steigung
  • L-Treppe — Dreipunkt, Zwischenpodest automatisch
  • Wendeltreppe — Zentrum, Radius, Steigungswinkel

Tragwerk

  • Stützen — Punkt, Profil (Rechteck / Rund / I)
  • Träger — Linie, I-Profil mit Schenkel-Höhe und -Breite
  • I-Profile — Standardisierte Querschnitte (HEA / HEB / IPE)

UI-Workflow

Im ELEMENTE-Panel:

  1. Bauteil-Typ wählen (Wand, Decke, Öffnung, …)
  2. Variante wählen (Tragwand, Pultdach, Holzfenster, …)
  3. Source in Rhino zeichnen
  4. Volumen erscheint sofort

Properties

Das ELEMENTE-PROPERTIES-Panel zeigt für die Selektion:

  • Element-Typ und -Variante
  • Dicke / Höhe / Position
  • Geschoss-Zuordnung
  • UserStrings (dossier_element_id, dossier_element_type)

Änderungen werden direkt geschrieben — keine Apply-Button-Logik.

Übersicht

Das ELEMENTE-ÜBERSICHT-Panel listet alle Smart-Elemente im Dokument tabellarisch — gefiltert nach Geschoss, Typ und Material. Ideal für Mengen-Audits und Konsistenz-Checks.

{{< callout type="warning" >}} elemente.py ist 7'244 LOC und enthält BIM-Logik aus echten Projekten. Nicht ohne expliziten Auftrag und Test-Plan refaktorisieren. {{< /callout >}}