Ich würde gerne wissen, ob es eine Möglichkeit gibt, ein dynamisches Koordinatensystemfeld in ein QGIS-Composer-Layout einzufügen.
Ich kann einen Ausdruck verwenden, um viele Elemente wie Dokumentname, Dateipfad usw. hinzuzufügen, aber ich kann anscheinend nicht herausfinden, wie das Koordinatensystem hinzugefügt wird.
Antworten:
So erhalten Sie die Berechtigungs-ID (dh " EPSG: 4326 "):
[% layer_property( 'your_layer_name_or_id', 'crs' ) %]
Wenn Sie die Textbeschreibung des CRS erhalten möchten (dh " WGS84 "):
Code:
get_crs( 'your_layer_name' )
quelle
Für eine einfachere Lösung ohne Python siehe Kommentar von gustry unten
Fügen Sie dieses Skript Ihrem benutzerdefinierten Funktionseditor hinzu:
und dann den Namen crs im Ausdruckseditor mit abrufen
Verwenden Sie für den CRS-Namen Ihres Projekts (z. B. Projektion in Ihrem Drucklayout) Folgendes:
Fügen Sie dieses Skript Ihrem benutzerdefinierten Funktionseditor hinzu:
und erhalten Sie dann den crs-Namen im Ausdruckseditor mit:
Natürlich können Sie auch zB
'EPSG:4326'
manuell@project_crs
eingeben oder eine andere Funktion verwenden, die einen EPSG-Code zurückgibt.Anmerkungen:
Weitere Informationen zu Änderungen in qgis 3.x finden Sie auch unter https://qgis.org/api/api_break.html
quelle