---
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 — produktiv im Einsatz            |
| **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

Plan-Qualität direkt aus dem 3D-Modell, ohne Umweg über 2D-Plandateien. 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 mit Schwarz-Remap** — Modell-Background auf reinweiss gezwungen, Layer-Display-Farben werden zu reinem 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.

Damit werden Wettbewerbs- und Konkurrenz-Pläne direkt aus dem Modell exportierbar, ohne separate 2D-Plot-Konvertierung.

## Section-Styles

Mit der Python-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 Python 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.
