Wie kann ich die Koordinatentransformationsparameter in QGIS anzeigen?

11

Wie kann ich die von QGIS für die "on-the-fly" -Transformation und dann zum Speichern von Daten in einem anderen CRS verwendeten Transformationsmethoden und -parameter anzeigen (und wenn möglich bearbeiten)? Wie in ArcGIS ?

Hier ist die ähnliche Frage, die jedoch anders beantwortet wurde. Ich möchte kein neues Koordinatensystem erstellen, sondern die Transformation zwischen vorhandenen in QGIS-Koordinatensystemen überprüfen .

In ArcGIS kann ich zwischen mehreren Transformationsmethoden für das CRS-Paar wählen, und was ist mit QGIS?

Ich habe das Standard-WGS84-CRS in ein anderes lokales CRS geändert. Wenn ich beispielsweise für das Projekt EPSG 3763 (ETRS PT TM 06), beschrieben als +proj=tmerc +lat_0=39.66825833333333 +lon_0=-8.133108333333334 +k=1 +x_0=0 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs, und das Hinzufügen von Daten in EPSG 20790 (Datum Lisboa) +proj=tmerc +lat_0=39.66666666666666 +lon_0=1 +k=1 +x_0=200000 +y_0=300000 +ellps=intl +towgs84=-304.046,-60.576,103.64,0,0,0,0 +pm=lisbon +units=m +no_defseinstelle, wird es im laufenden Betrieb neu projiziert und sieht mehr oder weniger korrekt aus. Aber wenn ich nicht sehen kann, ob es wirklich richtig ist, möchte ich die verwendete Transformation wissen. Es gibt mehrere empfohlene Methoden mit unterschiedlicher Genauigkeit, und ich möchte wissen, welche verwendet wurde (wenn es eine davon war).

(Ich spreche nicht fließend QGIS, sondern lerne nur).

Nadya
quelle

Antworten:

11

Sie können die proj-Zeichenfolge sehen, die von QGIS zur Transformation von und nach WGS84 verwendet wird, wenn Sie sich ansehen

Settings->Project settings, Registerkarte CRS, und suchen Sie nach dem EPSG-Code oder dem Namen eines CRS. Alle CRS werden durch ihren EPSG-Code oder benutzerdefinierte CRS referenziert.

Normalerweise werden alle EPSG-Codes mit einer bestimmten Transformation zu WGS84 gebündelt, die als am besten geeignet eingestuft wurde. Amerikanische NAD27-CRS sind die einzigen, die standardmäßig ein ntv2-Raster anstelle einer Helmert-Transformation mit drei oder sieben Parametern verwenden.

Wenn Sie mit der Genauigkeit einer definierten Transformation nicht zufrieden sind, können Sie ein benutzerdefiniertes CRS mit verschiedenen + towgs84-Parametern definieren.


BEARBEITEN

Für Ihr Lissabon-Bezugsbeispiel, bei dem es sich um eine Projektion von EPSG: 4207 handelt, bietet die EPSG-Datenbank verschiedene Transformationsparameter, die Sie unter http://svn.osgeo.org/gdal/trunk/gdal/data/datum_shift.csv finden :

214,1656,4207,4326, "Parameterwerte von Lissabon nach ETRS89 (1) (Code 1655). Angenommen, ETRS89 und WGS 84 können innerhalb der Genauigkeit der Transformation als gleich angesehen werden. Ersetzt durch Lissabon nach WGS 84 (4) (Code 1988). ", Für Anwendungen mit einer Genauigkeit von 3 Metern., 1294,36,96,42,15, -9,55, -6,19,1,0,9606, -280,9, -89,8,130,2, -1,721,0,355, -0,371 -5,92,0

215,1944,4207,4326, "Parameterwerte von Lissabon bis ETRS89 (2) (Code 1790). Angenommen, ETRS89 und WGS 84 können innerhalb der Genauigkeit der Transformation als gleich angesehen werden.", Für Anwendungen mit einer Genauigkeit von 2 meter., 1294,36,96,42,15, -9,55, -6,19,1,1,9606, -282,1, -72,2,120, -1,592,0,145, -0,89, -4,46,0

216,1984,4207,4326 ,, Für Anwendungen mit niedriger Auflösung., 1294,36,96,42,15, -9,55, -6,19,1,0,9603, -304,046, -60,576,103,64 ,,,,, 1

217,1988,4207,4326 ,, Für Anwendungen mit mittlerer Auflösung., 1294,36,96,42,15, -9,55, -6,19,1,0,9607, -288,885, -91,744,126,244,1,691, -0,41,0,211, -4,598 , 0

Sie sehen also, dass in Ihrem Beispiel die Transformation mit niedriger Auflösung und drei Parametern verwendet wird. Es wird in http://svn.osgeo.org/gdal/trunk/gdal/data/gcs.csv unter Code 4207 gespeichert und von Qgis und anderer GIS-Software abhängig von proj.4 verwendet.

http://www.epsg-registry.org/ gibt eine Genauigkeit von 5 Metern für EPSG: 1984 an (beachten Sie, dass Transformationen ihre eigenen Codenummern haben). Diese Werte wurden erstmals von NIMA veröffentlicht, als WGS84 eingeführt wurde. Aber es ist nicht das, was die örtliche Vermessungsbehörde empfiehlt. Sie können auch einen Blick auf http://www.fc.up.pt/pessoas/jagoncal/coordenadas/index_en.htm werfen

Wenn Sie es genauer wünschen, probieren Sie das ntv2-Raster von http://www.igeo.pt/produtos/geodesia/Grelhas_NTv2.htm

AndreJ
quelle
Danke für die Antwort, aber es ist nicht ganz klar. In den Projekteinstellungen habe ich das Standard-WGS84-CRS bereits in ein anderes geändert. Wenn ich Sie also richtig verstehe, sieht QGIS alle Koordinatensysteme gemäß geografischem WGS84? Und die Transformation von einem lokalen CRS von Daten zu einem anderen CRS des Projekts erfolgt ohnehin immer über WGS84 wie CRS1-> WGS84-> CRS2? (Für EPSG 3763 (ETRS) sehe ich +proj=tmerc +lat_0=39.66825833333333 +lon_0=-8.133108333333334 +k=1 +x_0=0 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs, also 0,0,0,0,0,0,0 sind die Parameter, rechts)
Nadya
1
Ja, WGS84 ist die Basis für alle CRS, die von und nach übertragen werden. ETRS verwendet (fast) das gleiche Ellipsoid wie WGS84, daher werden Nullpunktverschiebungsparameter angegeben. Die durch tektonische Bewegungen verursachte Verschiebung zwischen WGS84 und ETRS wird von Zeit zu Zeit durch Neudefinition von WGS84 angepasst.
AndreJ
Ja, ETRS ist für mich nur ein Glücksfall. Ich frage mich, was wäre, wenn ich zwei CRS hätte, die sich von WGS84 unterscheiden? CRS1-> WGS84-> CRS2 ist ein ziemlich grober Weg :(
Nadya
1
Es ist nur etwas komplizierter: projiziertes CRS1 -> geodätisches CRS1 -> WGS84 -> geodätisches CRS2 - projiziertes CRS2. Wir haben über 55000 EPSG-Codes. Sie können sich vorstellen, wie viele Transformationsparameter benötigt werden, wenn Sie direkt zwischen allen transformieren möchten ...
AndreJ
1
3-Parameter ist immer dx, dy und dz Verschiebung, während 7-Parameter rotx, roty, rotz und einen Skalierungsfaktor hinzufügen. In Deutschland heißen beide Helmert, während Molodensky und Bursa-Wolf im Rest der Welt verwendet werden. Es gibt auch andere Transformationen, die jedoch nicht in proj implementiert sind.
AndreJ