basemap.de zeichnet Punktlinien mit Strichlänge 0 und runder Kappe; Qt zeichnet Striche der Länge 0 nicht, deshalb fehlten Baumreihen, Hecken, Durchlässe, Seilbahnen u. a. (12 Styles) in Karte und Basemap-Legende. Neuer Knopf „Punktlinien korrigieren“ im Basemap-Bereich des Druck-Tabs ersetzt die Strichlänge 0 durch 0,01 – im festen Strichmuster und im zoomabhängigen Ausdruck. Issue: #90.
Wie geprüft
Zuerst der Test, der den Fehler zeigt (tests/test_basemap_stilkorrektur.py, rot ohne Modul), dann die Korrektur.
tests/test_basemap_stilkorrektur.py (neu), tests/test_basemap_anbindung.py (2 Tests), changelog.txt. Nachweis: siehe „Wie geprüft“. Entscheidungen/Annahmen: Korrektur nur auf Knopfdruck (nicht automatisch), am Layer und nicht nur in der Legende – sonst zeigte die Legende Punkte, die in der Karte fehlen. Ersatzwert 0,01 (in Vielfachen der Linienbreite) ergibt mit runder Kappe runde Punkte. Offen / nächste Schritte: 1. Test unter QGIS 4. 2. Optional Fehlerbericht an QGIS (Mapbox-Style-Konverter sollte Strichlänge 0 abfangen). 3. Empfehlung an die Nutzer: einmal korrigieren und als Standard-Stilvorlage speichern. Wissensbasis: Projektwissen-Branch docs/90-basemap-punktlinien (eigener PR), Commit „Basemap-Punktlinien (Basis #90)“: fallstricke.md (Strichlänge 0), Konzept 10 Abschnitt 10, modulkarte.md, STATUS.md, Testkatalog. Kontext für die nächste Sitzung:sn_basis/modules/basemap_stilkorrektur.py, sn_basis/ui/widgets/basemap_bereich.py.
## Was
basemap.de zeichnet Punktlinien mit Strichlänge 0 und runder Kappe; Qt zeichnet Striche der Länge 0 nicht, deshalb fehlten Baumreihen, Hecken, Durchlässe, Seilbahnen u. a. (12 Styles) in Karte und Basemap-Legende. Neuer Knopf „Punktlinien korrigieren“ im Basemap-Bereich des Druck-Tabs ersetzt die Strichlänge 0 durch 0,01 – im festen Strichmuster und im zoomabhängigen Ausdruck. Issue: #90.
## Wie geprüft
- Zuerst der Test, der den Fehler zeigt (`tests/test_basemap_stilkorrektur.py`, rot ohne Modul), dann die Korrektur.
- `python scripts/run_tests.py sn_basis --baseline`: `[sn_basis] GRÜN: 404/404 bestanden, 0 Fehlschläge, 0 Fehler, 0 übersprungen` – unverändert gegenüber Baseline; 8 neue Testfälle.
- `python scripts/pruefe_umlaute.py Plugin_SN_Basis`: 0 Funde.
- QGIS-Test: **QGIS 3.44.4 (Qt5), offscreen**, echte basemap.de-Kacheln, nur Baumreihe/Durchlass eingeschaltet, Beschriftung aus:
- vorher: Karte 0 sichtbare Pixel, Legendensymbole Baumreihe/Durchlass 0 Pixel
- `korrigiere_punktlinien`: 12 Styles korrigiert, zweiter Lauf 0
- nachher: Karte 311 Pixel (Punkte sichtbar), Legendensymbole 230 / 84 Pixel
- Korrektur als Stilvorlage gespeichert → frischer Layer (0) → Vorlage geladen → Karte sichtbar, keine weitere Korrektur nötig
- Knopf im Basemap-Bereich vorhanden und bei vorhandenem Basemap-Layer aktiv
- **Nicht geprüft:** QGIS 4 (Qt6) – ob Qt6 Striche der Länge 0 zeichnet, ist offen.
## Änderungen an Verträgen
keine (neues Modul `modules/basemap_stilkorrektur.py`; Wrapper-Konstante `PROPERTY_CUSTOM_DASH`, `QgsProperty.fromExpression` im Mock).
## Übergabenotiz
**Aufgabe:** Plugin_SN_Basis #90 – Punktlinien der Basemap in Karte und Legende sichtbar machen.
**Stand:** fertig.
**Geändert:**
- `modules/basemap_stilkorrektur.py` (neu) – `korrigiere_punktlinien(layer)`, `korrigiere_muster`, `korrigiere_ausdruck`.
- `ui/widgets/basemap_bereich.py` – Knopf „Punktlinien korrigieren“ mit Meldung der Anzahl.
- `functions/qgiscore_wrapper.py` – `PROPERTY_CUSTOM_DASH`, Mock `QgsProperty.fromExpression`.
- `tests/test_basemap_stilkorrektur.py` (neu), `tests/test_basemap_anbindung.py` (2 Tests), `changelog.txt`.
**Nachweis:** siehe „Wie geprüft“.
**Entscheidungen/Annahmen:** Korrektur nur auf Knopfdruck (nicht automatisch), am Layer und nicht nur in der Legende – sonst zeigte die Legende Punkte, die in der Karte fehlen. Ersatzwert 0,01 (in Vielfachen der Linienbreite) ergibt mit runder Kappe runde Punkte.
**Offen / nächste Schritte:** 1. Test unter QGIS 4. 2. Optional Fehlerbericht an QGIS (Mapbox-Style-Konverter sollte Strichlänge 0 abfangen). 3. Empfehlung an die Nutzer: einmal korrigieren und als Standard-Stilvorlage speichern.
**Wissensbasis:** Projektwissen-Branch `docs/90-basemap-punktlinien` (eigener PR), Commit „Basemap-Punktlinien (Basis #90)“: `fallstricke.md` (Strichlänge 0), Konzept 10 Abschnitt 10, `modulkarte.md`, `STATUS.md`, Testkatalog.
**Kontext für die nächste Sitzung:** `sn_basis/modules/basemap_stilkorrektur.py`, `sn_basis/ui/widgets/basemap_bereich.py`.
## Checkliste
- [x] Nur Änderungen zum Issue
- [x] Keine direkten Qt/QGIS-Importe, keine Debug-`print`
- [x] `changelog.txt` ergänzt
- [x] Wissensbasis nachgezogen
🤖 Generated with [Claude Code](https://claude.com/claude-code)
basemap.de zeichnet Punktlinien mit Strichlänge 0 und runder Linienkappe (MapLibre-Muster);
QGIS übernimmt das beim Import 1:1, Qt zeichnet Striche der Länge 0 aber nicht. Baumreihen,
Hecken, Durchlässe, Seilbahnen u. a. (12 Styles) fehlten dadurch in Karte und Legende.
Neues Modul basemap_stilkorrektur: korrigiere_punktlinien(layer) ersetzt Strichlänge 0 durch
0,01 im festen Strichmuster und in den array(...)-Mustern des zoomabhängigen Ausdrucks;
idempotent, andere Styles unverändert. Ausgelöst per Knopf „Punktlinien korrigieren“ im
Basemap-Bereich, sicherbar als Stilvorlage. Wrapper: PROPERTY_CUSTOM_DASH,
QgsProperty.fromExpression im Mock.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Daniel
merged commit 1dc19d1324 into unstable2026-10-02 10:38:32 +00:00
Daniel
deleted branch bugfix/90-basemap-punktlinien2026-10-02 10:38:32 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Was
basemap.de zeichnet Punktlinien mit Strichlänge 0 und runder Kappe; Qt zeichnet Striche der Länge 0 nicht, deshalb fehlten Baumreihen, Hecken, Durchlässe, Seilbahnen u. a. (12 Styles) in Karte und Basemap-Legende. Neuer Knopf „Punktlinien korrigieren“ im Basemap-Bereich des Druck-Tabs ersetzt die Strichlänge 0 durch 0,01 – im festen Strichmuster und im zoomabhängigen Ausdruck. Issue: #90.
Wie geprüft
tests/test_basemap_stilkorrektur.py, rot ohne Modul), dann die Korrektur.python scripts/run_tests.py sn_basis --baseline:[sn_basis] GRÜN: 404/404 bestanden, 0 Fehlschläge, 0 Fehler, 0 übersprungen– unverändert gegenüber Baseline; 8 neue Testfälle.python scripts/pruefe_umlaute.py Plugin_SN_Basis: 0 Funde.korrigiere_punktlinien: 12 Styles korrigiert, zweiter Lauf 0Änderungen an Verträgen
keine (neues Modul
modules/basemap_stilkorrektur.py; Wrapper-KonstantePROPERTY_CUSTOM_DASH,QgsProperty.fromExpressionim Mock).Übergabenotiz
Aufgabe: Plugin_SN_Basis #90 – Punktlinien der Basemap in Karte und Legende sichtbar machen.
Stand: fertig.
Geändert:
modules/basemap_stilkorrektur.py(neu) –korrigiere_punktlinien(layer),korrigiere_muster,korrigiere_ausdruck.ui/widgets/basemap_bereich.py– Knopf „Punktlinien korrigieren“ mit Meldung der Anzahl.functions/qgiscore_wrapper.py–PROPERTY_CUSTOM_DASH, MockQgsProperty.fromExpression.tests/test_basemap_stilkorrektur.py(neu),tests/test_basemap_anbindung.py(2 Tests),changelog.txt.Nachweis: siehe „Wie geprüft“.
Entscheidungen/Annahmen: Korrektur nur auf Knopfdruck (nicht automatisch), am Layer und nicht nur in der Legende – sonst zeigte die Legende Punkte, die in der Karte fehlen. Ersatzwert 0,01 (in Vielfachen der Linienbreite) ergibt mit runder Kappe runde Punkte.
Offen / nächste Schritte: 1. Test unter QGIS 4. 2. Optional Fehlerbericht an QGIS (Mapbox-Style-Konverter sollte Strichlänge 0 abfangen). 3. Empfehlung an die Nutzer: einmal korrigieren und als Standard-Stilvorlage speichern.
Wissensbasis: Projektwissen-Branch
docs/90-basemap-punktlinien(eigener PR), Commit „Basemap-Punktlinien (Basis #90)“:fallstricke.md(Strichlänge 0), Konzept 10 Abschnitt 10,modulkarte.md,STATUS.md, Testkatalog.Kontext für die nächste Sitzung:
sn_basis/modules/basemap_stilkorrektur.py,sn_basis/ui/widgets/basemap_bereich.py.Checkliste
printchangelog.txtergänzt🤖 Generated with Claude Code