9dc191be4f
OpenStudio-Suite Architektur-Plugin fuer Rhino 8 (Mac): - Smart-Elemente: Wand, Decke, Dach (Pult/Sattel/Walm/Mansarde), Oeffnungen (Fenster/Tueren mit Rahmen + Sims + Glas + Fluegel), Treppen (gerade · L · Wendel mit Schrittmass-Validierung) - Live-Previews mit Step-Lines + Soll-Range-Clamping - Bidirektionale Selection-Sync zwischen Source-Linie und Volume - Geschoss-/Ebenen-Verwaltung mit OKFF-Persistenz - Layouts mit PDF-Export - Ausschnitte / Massstab / Override-Regeln - Petrol-Gruen Theme (Rapport-konform) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2.4 KiB
2.4 KiB
RhinoPanel — Installation Rhino 8 (Mac)
Voraussetzungen
- Rhino 8
- Node.js (nur fuer Dev-Modus)
Dev-Modus
cd rhino-panel
npm run dev # startet auf http://localhost:5173
In Rhino: _RunPythonScript → rhino/rhinopanel.py
Prod-Modus
npm run build # erstellt dist/
In Rhino: _RunPythonScript → rhinopanel.py
Das Script erkennt dist/index.html automatisch.
Autostart
Rhino Optionen → Scripting → Startup Scripts → rhinopanel.py hinzufuegen
Grasshopper-Anbindung
Wie es funktioniert
Wenn "Anwenden" im Panel gedrueckt wird:
- Rhino-Layer werden erstellt/aktualisiert
- Ebenen-JSON wird in
doc.Strings["rhinopanel_ebenen"]gespeichert - Grasshopper-Neuberechnung wird automatisch ausgeloest
GH Python-Component einrichten
- GH oeffnen →
Params > Util > Python ScriptKomponente platzieren - Inhalt von
rhino/gh_ebenen.pyhineinkopieren - Outputs der Komponente (Rechtsklick → "Manage Outputs") anlegen:
| Output | Typ | Inhalt |
|---|---|---|
namen |
list | Grundriss-Namen (EG, 1OG, ...) |
okff |
list | Bodenniveau je Geschoss in m |
hoehen |
list | Geschosshoehe in m |
schnitthoehen |
list | Schnitthoehe ueber Boden in m |
grundriss_ebenen |
list | Planes auf Schnitthoehe (fuer Section) |
boden_ebenen |
list | Planes auf OKFF (fuer Extrusion) |
gebaeude_hoehe |
item | Gesamthoehe in m |
schnitte |
list | Namen der Schnitt-Ebenen |
ansichten |
list | Namen der Ansichts-Ebenen |
Typische GH-Verknuepfungen
Automatischer Grundrissschnitt:
gh_ebenen.grundriss_ebenen → Brep Split / Section
Wandextrusion (2D → 3D):
Curves auf Layer 01_WAND
→ Extrude (Vektor: {0,0,hoehe})
→ Cap Holes
→ BooleanUnion
Stockwerke positionieren:
gh_ebenen.boden_ebenen → Orient
Alternativ: Get Document String (ohne Python)
Params > Util > Get Document String- Key:
rhinopanel_ebenen - Output →
Deserialize JSONoderEvaluate Expression
Dateistruktur
rhino-panel/
├── src/ React-App (Quellcode)
├── dist/ Gebaute App (nach npm run build)
└── rhino/
├── rhinopanel.py Panel starten (in Rhino ausfuehren)
├── layer_builder.py Layer-Erstellung
└── gh_ebenen.py GH Python-Component Code