93 lines
4.0 KiB
Markdown
93 lines
4.0 KiB
Markdown
---
|
|
title: Massstab & Display-Modes
|
|
linkTitle: Massstab
|
|
weight: 9
|
|
---
|
|
|
|
Das **MASSSTAB**-Panel verwaltet den Viewport-Massstab und die Display-Modes. Es kommuniziert bi-direktional mit AUSSCHNITTE — Skala lesen und setzen.
|
|
|
|
## Massstab 1:N
|
|
|
|
Standard-Massstäbe für architektonische Pläne:
|
|
|
|
| Code | Verwendung |
|
|
|--------|------------------------------------------|
|
|
| 1:1 | Detail |
|
|
| 1:5 | Detail |
|
|
| 1:10 | Detail |
|
|
| 1:20 | Detail / Konstruktion |
|
|
| 1:50 | Grundriss Detail / Konstruktion |
|
|
| 1:100 | Grundriss / Schnitt / Ansicht (Standard) |
|
|
| 1:200 | Grundriss (gross) |
|
|
| 1:500 | Situation |
|
|
| 1:1000 | Situation / Übersicht |
|
|
|
|
Eigene Skalen können hinzugefügt werden.
|
|
|
|
## Auto-DPI
|
|
|
|
Auf Mac wird die DPI über **CoreGraphics** automatisch ermittelt — Retina-Display vs. externer Monitor wird korrekt erkannt. Robuster als die meisten alternativen Ansätze (z.B. NSScreen-Polling) und ohne Display-Profile-Hacks.
|
|
|
|
Auf Windows wird `GetDeviceCaps(LOGPIXELSX)` verwendet.
|
|
|
|
## PlotWeight-Synchronisation
|
|
|
|
Plot-Strichstärken sind massstabsabhängig:
|
|
|
|
```text
|
|
1:100 → 0.18 mm = 0.5 PlotWeight
|
|
1:50 → 0.18 mm = 1.0 PlotWeight (skalierungsbedingt)
|
|
1:20 → 0.18 mm = 2.5 PlotWeight
|
|
```
|
|
|
|
Das MASSSTAB-Panel rechnet die effektive PlotWeight für die aktuelle Skala automatisch und schreibt sie in die Layer-Eigenschaften.
|
|
|
|
## Display-Modes
|
|
|
|
Eingebaute Display-Modes plus DOSSIER-spezifische:
|
|
|
|
| Mode | Verwendung |
|
|
|----------------------|--------------------------------------------------|
|
|
| Wireframe | Editieren, Geometrie-Check |
|
|
| Shaded | Modellansicht |
|
|
| Rendered | Präsentation |
|
|
| **Dossier-Plan** | Plot-optimiert (in aktiver Entwicklung) |
|
|
| **Dossier-Flaechen** | SIA-416 farbliche Überlagerung |
|
|
| **Dossier-Detail** | Hatching aktiv, hohe Strichstärken |
|
|
|
|
Display-Modes werden einmal gelesen und im Sticky gecacht (`oberleiste.py`).
|
|
|
|
### Dossier-Plan — Plan-Qualität direkt aus 3D
|
|
|
|
{{< callout type="warning" >}}
|
|
**In Arbeit.** Der Dossier-Plan-Mode ist der nächste grosse Schritt für Plan-Qualität direkt aus dem 3D-Modell — ohne Umweg über 2D-Plandateien.
|
|
{{< /callout >}}
|
|
|
|
Drei kombinierte Effekte machen den Mode aus:
|
|
|
|
- **Hidden-Line-Removal** — verdeckte Kanten werden ausgeblendet, Sichtkanten als saubere Strichgrafik gerendert. Funktioniert in Top-View und in der Schnitt-Perspektive.
|
|
- **Weisser Hintergrund** — Modell-Background auf reinweiss gezwungen, Layer-Display-Farben werden zu pure Schwarz remappt. Sieht direkt aus wie ein gedruckter Plan, nicht wie ein 3D-Viewport.
|
|
- **Section-Hatch** — Schnittflächen, die über die [Schnitte & Ansichten](../schnitte-ansichten)-Section-Style-API erzeugt wurden, werden mit Pattern und Lineweight aus dem Layer-Style gehatched.
|
|
|
|
Das Ziel: Wettbewerbs- und Konkurrenz-Pläne direkt aus dem Modell exportieren, ohne Plot-Konvertierung über 2D-CAD.
|
|
|
|
## Section-Styles
|
|
|
|
Mit der CPython-3-Migration ist `Rhino.DocObjects.SectionStyle()` direkt instanziierbar — `layer.SetCustomSectionStyle()` verfügbar. Die volle Section-Style-API steht zur Verfügung:
|
|
|
|
- Schnittlinien-Stil pro Layer
|
|
- Hatch-Pattern für Schnittflächen
|
|
- Hidden-Line-Removal für Ansichten
|
|
|
|
War der **Anlass** für die Migration von IronPython 2.7 zu CPython 3.
|
|
|
|
## Bi-direktional mit AUSSCHNITTE
|
|
|
|
```text
|
|
MASSSTAB ──set scale──▶ AUSSCHNITTE
|
|
▲ │
|
|
└──read scale on load───┘
|
|
```
|
|
|
|
Beim Wechsel eines Ausschnitts (Named View) wird die gespeicherte Skala übernommen. Manuelle Massstabs-Änderung wird beim nächsten Save in den Ausschnitt zurückgeschrieben.
|