d558fac2c3
Gestaltung panel now shows pen controls (color, lineweight, linetype) when nothing is selected. Settings persist in sticky and are stamped onto every newly drawn object (curves, text, hatch, dims — not 3D solids or DOSSIER element geometry) via the existing AddRhinoObject listener. Active state shown with badge; resets by switching all back to "Nach Ebene". Also adds csharp/BUILD.md with full build + post-reinstall checklist. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
78 lines
2.4 KiB
Markdown
78 lines
2.4 KiB
Markdown
# DOSSIER C# Plugin — Build & Install
|
|
|
|
Das Plugin (`.rhp`) bootstrappt beim Rhino-Start die Python-Module und
|
|
registriert native Commands (`dWall`, `dDoor`, `dSlab`, …).
|
|
|
|
## Voraussetzungen
|
|
|
|
```bash
|
|
brew install dotnet@7
|
|
```
|
|
|
|
Oder direkt von Microsoft: https://dotnet.microsoft.com/download/dotnet/7.0
|
|
|
|
RhinoCommon wird beim ersten Build automatisch via NuGet geladen.
|
|
|
|
## Repo-Pfad setzen (nach Neuinstallation wichtig)
|
|
|
|
Das Plugin sucht das Repo in dieser Reihenfolge:
|
|
|
|
1. Env-Var `DOSSIER_HOME`
|
|
2. Datei `~/.dossier_home` (eine Zeile: absoluter Pfad zum Repo-Root)
|
|
3. Hardcoded Fallback `/Users/karim/STUDIO/DOSSIER`
|
|
|
|
Einfachste Variante — einmalig nach dem Klonen:
|
|
|
|
```bash
|
|
echo "/Users/karim/PROJECTS/DOSSIER" > ~/.dossier_home
|
|
```
|
|
|
|
Ohne das findet das Plugin `rhino/startup.py` nicht und bootet nicht.
|
|
|
|
## Build
|
|
|
|
```bash
|
|
cd csharp/DOSSIER
|
|
./build.sh # Release → bin/Release/net7.0/DOSSIER.rhp
|
|
./build.sh debug # Debug-Build mit Symbols
|
|
./build.sh clean # bin/ + obj/ löschen
|
|
./build.sh install # Build + yak install in Rhino-User-Plugin-Pfad
|
|
```
|
|
|
|
## Installation in Rhino (einmalig nach Build)
|
|
|
|
Mac Rhino 8 unterstützt kein Drag & Drop für `.rhp`-Dateien.
|
|
|
|
1. Rhino 8 öffnen
|
|
2. Befehl: `PluginManager`
|
|
3. Button **Install…** → `csharp/DOSSIER/bin/Release/net7.0/DOSSIER.rhp`
|
|
4. Rhino neu starten
|
|
|
|
Der Pfad bleibt in Rhinos Settings-XML registriert. Bei späteren Builds
|
|
einfach wieder in denselben Output-Pfad bauen — Rhino lädt den neuen Stand
|
|
automatisch beim nächsten Start.
|
|
|
|
## Startup-Eintrag (Python-Bootstrap)
|
|
|
|
Der Launcher trägt den Startup-Eintrag automatisch ein. Für manuelle
|
|
Dev-Setups ohne Launcher:
|
|
|
|
Rhino → Options → General → „Run these commands every time a model is opened":
|
|
|
|
```
|
|
_-RunPythonScript "/Users/karim/PROJECTS/DOSSIER/rhino/startup.py"
|
|
```
|
|
|
|
(Mit Dash, mit Quotes, voller Pfad — siehe CLAUDE.md für Details warum.)
|
|
|
|
## Nach Neuinstallation Mac — Checkliste
|
|
|
|
- [ ] Repo klonen: `git clone https://git.kgva.ch/karim/DOSSIER.git`
|
|
- [ ] `echo "/Users/karim/PROJECTS/DOSSIER" > ~/.dossier_home`
|
|
- [ ] `brew install dotnet@7 node`
|
|
- [ ] `cd DOSSIER && npm install && npm run build`
|
|
- [ ] `cd csharp/DOSSIER && ./build.sh install`
|
|
- [ ] Rhino öffnen → PluginManager → Install → `.rhp` registrieren
|
|
- [ ] Rhino neu starten → DOSSIER bootstrappt (Panels + Commands)
|
|
- [ ] `~/Library/Application Support/RhinoPanel/override_presets.json` von Backup zurückkopieren
|