Re: [FOSSGIS-Talk] QGIS Layoutvorlage Datendefinierten Übersteuerung für Massstabsleiste

Jens jc-geo at mailbox.org
So Jun 29 22:44:54 CEST 2025


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 
>


Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste