--- Begin Message ---
Hallo David,
ja, das ist die Lösung. Vielen Dank.
Gruß Jens
Am 28.06.25 um 22:16 schrieb David Koster:
Hallo Jens,
möglicherweise liegt es daran, dass QGIS einen eingegebenen Maßstab
von z.B. 50 nicht zwingend auch als 50 intern speichert, sondern als
Fließkommazahl nahe 50 (z.B. 50.000000000010544).
Wenn du also 50 als Maßstab eingibst, wird nicht exakt 50 gespeichert
und deine Regel greift entsprechend nicht.
Du kannst alternativ folgendes probieren, wobei die gespeicherte
Maßstabszahl "zurückgerundet" wird:
CASE
WHEN round(map_get(item_variables('Karte_1'), 'map_scale')) = 50
THEN 1.0
WHEN round(map_get(item_variables('Karte_1'), 'map_scale')) = 250
THEN 2.5
WHEN round(map_get(item_variables('Karte_1'), 'map_scale')) = 500
THEN 5.0
WHEN round(map_get(item_variables('Karte_1'), 'map_scale')) = 5000
THEN 50.0
WHEN round(map_get(item_variables('Karte_1'), 'map_scale')) = 50000
THEN 500.0
END
Ggf. muss man nach der Maßstabseingabe nochmal mit F5 aktualisieren.
Ich drücke die Daumen, dass das hilft.
Schöne Grüße
David
_____________________________________________________
Am 28.06.2025 um 17:26 schrieb Jens via FOSSGIS-Talk-Liste:
Hallo an alle,
ich erstelle gerade Druckvorlagen mit den Blattformaten A4 und A3.
Diese sollen von allen Benutzer:innen für schnelle einfache Ausdrucke
verwendet werden.
In den Vorlagen ist auch ein begrenzter Platz für die Darstellung der
Maßstabsleiste. Die Anwender:innen sollen ohne Probleme einen großen
Maßstabsbereich verwenden können. Dieser soll von 1:50 bis 1:500.000,
mit den üblichen Schritten dazwischen wie z.B. 1:100, 150, 200, 250,
500, ...25000 usw. gehen.
Jetzt habe ich ein Problem mit der entsprechenden Ausdehnung der
Maßstabsleiste.
Dies kann man ja über die Menüpunkte 'Segmente', 'Feste Breite' oder
'An Segmentbreite anpassen' entsprechend einrichten.
Darum habe ich eine Regel für meine universellen Druckvorlagen
erstellt, die entsprechend des eingestellten Maßstabes im Feld
'Feste Breite' automatisch einen passenden Wert einträgt, damit die
Leiste immer relativ gleich breit ist.
Hier mal ein Auszug:
CASE
WHEN map_get(item_variables('Karte_1'), 'map_scale') = 50 THEN 1.0
WHEN map_get(item_variables('Karte_1'), 'map_scale') = 250 THEN 2.5
WHEN map_get(item_variables('Karte_1'), 'map_scale') = 500 THEN 5.0
WHEN map_get(item_variables('Karte_1'), 'map_scale') = 5000 THEN 50.0
WHEN map_get(item_variables('Karte_1'), 'map_scale') = 50000 THEN 500.0
END
Gebe ich die Werte manuell ein, wird die Maßstabsleiste wie gewünscht
angezeigt, aber über die Regeln funktioniert es überhaupt nicht.
Regeln funktionieren auch nicht, wenn ich diese für die Menüpunkte
'Segmente' oder 'An Segmentbreite anpassen' verwende.
Alle Werte habe ich jedes mal auch manuell eingegeben und geprüft.
Habe auch mit den Angaben hinter "THEN" experimentiert, also auch
'1.0' oder '1,0' verwendet, aber ohne Wirkung.
Was mich auch ein wenig wundert, konnte man 'früher' nicht einfach
mit der Variable 'map_scale' den aktuellen Kartenmaßstab abfragen?
Wo ist hier mein Denkfehler, oder ist das ein Bug? Wenn ich in QGIS
neben ein Eingabefeld den Button für eine
'Datendefinierten Übersteuerung' habe, dann sollte das doch
funktionieren.
Getestet unter W10 QGIS 3.40.7 LTR und
Linux (Fedora) QGIS 3.44.0
Beste Grüße, Jens
--- End Message ---
--
....................................................................
FOSSGIS-Konferenz 2026 mit OpenStreetMap-Event in Göttingen!
25.-28. März 2026 https://www.fossgis-konferenz.de/
FOSSGIS Vereinstermine:
https://fossgis.de/aktivit%C3%A4ten/termine/
FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem
GIS-Bereich und Freier Geodaten!
https://www.fossgis.de/ https://mastodon.online/@FOSSGISeV
____________________________________________________________________
FOSSGIS-Talk-Liste mailing list
FOSSGIS-Talk-Liste@fossgis.de
https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste