# RhinoPanel — Installation Rhino 8 (Mac) ## Voraussetzungen - Rhino 8 - Node.js (nur fuer Dev-Modus) --- ## Dev-Modus ```bash cd rhino-panel npm run dev # startet auf http://localhost:5173 ``` In Rhino: `_RunPythonScript` → `rhino/rhinopanel.py` ## Prod-Modus ```bash 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: 1. Rhino-Layer werden erstellt/aktualisiert 2. Ebenen-JSON wird in `doc.Strings["rhinopanel_ebenen"]` gespeichert 3. Grasshopper-Neuberechnung wird automatisch ausgeloest ### GH Python-Component einrichten 1. GH oeffnen → `Params > Util > Python Script` Komponente platzieren 2. Inhalt von `rhino/gh_ebenen.py` hineinkopieren 3. 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 JSON` oder `Evaluate 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 ```