Wenn ich QGIS öffne, die Ebene hinzufüge und die Flächen des Shapefiles über den Feldrechner berechne, erhalte ich eine andere Fläche als beim Öffnen von QGIS und aktiviere "Sofortige CRS-Transformation aktivieren" und berechne die Fläche. Dies gilt trotz der Sicherstellung, dass das Projekt und die Ebene dasselbe Koordinatensystem (dieselbe EPSG-Nummer) haben. Was mache ich falsch?
Ich habe ein Shapefile mit Flächenberechnungen, die mit ArcGIS erstellt wurden (nicht ich, die Daten wurden mir übergeben und ich habe keine Ahnung, für welches CRS die Fläche mit ArcGIS berechnet wurde). Die Shapefile-Schicht CRS ist EPSG: 21781 (Schweiz). Wenn ich in QGIS die OTF-Einstellungen nicht ändere und das Projekt CRS als EPSG: 4326 (WGS84) belasse, erhalte ich denselben Wert wie der ArcGIS-Bereichswert. Wenn ich jedoch den OTF ändere, bevor ich die Ebene zu EPSG: 21781 hinzufüge, erhalte ich unterschiedliche Flächenwerte. Soweit ich weiß, deutet dies darauf hin, dass ArcGIS Area mit dem CRS EPSG: 4326 berechnet wurde.
Erster Workflow:
- Öffnen Sie QGIS
- Projekt CRS: EPSG 4326
- Ebene hinzufügen
- Projekt CRS passt sich automatisch an und ist jetzt EPSG 21781
- $ Fläche mit Feldrechner berechnen
Zweiter Workflow:
- Öffnen Sie QGIS
- Projekt CRS: EPSG 4326
- Schalten Sie OTF ein und setzen Sie das Projekt CRS auf EPSG 21781
- Ebene hinzufügen
- $ Fläche mit Feldrechner berechnen
Schritt 5 des ersten und zweiten Workflows erzeugt NICHT den gleichen Bereich.
quelle
$area
im abgelegten Rechner verwendet. Kurz gesagt, On-the-Fly beeinflusst, wie Geometrie angezeigt wird, ohne die Daten de facto zu ändern. Daher ist es wahrscheinlicher, dass der Fehler auf den Workflow zurückzuführen ist.!shape.area!
des Feldrechners verwenden, sollte der Bereich entsprechend der Ebene crs angegeben werden. als Geometrie berechnen könnte anders funktionieren. Es ist also schwer zu sagen, was genau in Arcgis gemacht wurde, aber wenn Sie das gleiche Ergebnis erhalten, z. B. Grad und nicht Meter, bedeutet dies, dass die Flächenberechnung tatsächlich auf dem ESPG basiert: 4326.Antworten:
EDIT - Haftungsausschluss: Ich möchte die Leser auf die Diskussion mit ChrisW unten verweisen. Es kann sein, dass das Abrufen eines Bereichs, der auf einem OTF-CRS basiert, doch kein Fehler ist. Das heißt, zumindest in Arcgis wird es auch verwendet, um die Geoverarbeitung von zwei Schichten aus verschiedenen CRS zu ermöglichen.
Um auf das obige Problem einzugehen. Wie AndreJ vorgeschlagen und gezeigt hat - dies ist wahrscheinlich ein Fehler in der aktuellen Version von qgis. Es sollte jedoch beachtet werden, dass das Problem nicht das falsche Gebiet ist, sondern dass sich die On-the-Fly-Transformation ohnehin auf Gebietsberechnungen auswirkt.
Der Zweck der spontanen Transformation / Projektion besteht darin, Daten aus verschiedenen Quellen und mit verschiedenen CRS auszurichten. Das ist hauptsächlich für Anzeigezwecke. EG arcmap führt automatisch eine On-the-Fly-Projektion durch, in jedem Fall stimmt ein Layer-CRS nicht mit dem Datenrahmen-CRS überein.
Arcmap bietet auch die Möglichkeit, Daten zu bearbeiten, während sie im laufenden Betrieb projiziert werden. Beachten Sie jedoch auch Folgendes: ( Quelle )
Das heißt: Die spontane Transformation ist weniger genau als nur die Projektierung der Daten auf ein anderes CRS (was auch eigene Probleme mit sich bringt).
Es ist jedoch nicht verwunderlich, dass auf der Grundlage einer On-the-Fly-Transformation eine falsche Fläche berechnet wird. Es ist jedoch überraschend, dass die Tatsache, dass On-the-Fly aktiviert wurde, die Berechnung der Geometrie in irgendeiner Weise beeinflusst, die dies sollte auf den Daten basieren. Daher spielt es keine Rolle, ob die On-the-Fly-Transformation auf demselben oder einem anderen CRS basiert. Die Flächenberechnung sollte jedes Mal identisch sein.
Um praktischer zu sein, wenn Sie das Gebiet berechnen möchten, verwenden Sie es nicht im laufenden Betrieb. Wenn Sie das falsche CRS haben, projizieren Sie Ihre Daten.
quelle
!shape.area@meters!
Ich kann bestätigen, dass es ein Fehler zu sein scheint.
Erstellen Sie eine CSV-Datei mit folgendem Inhalt:
Importieren Sie es mit EPSG: 21781 als begrenzten Text, aktivieren Sie das Einrasten und zeichnen Sie ein Polygon-Shapefile auf die vier Punkte.
Ohne OTF ergibt sich ein Ergebnis von
$area/1000000.0
10000 m² (was offensichtlich richtig ist).Drehen OTF auf und die gleiche EPSG Auswahl: 21781, erhalten Sie 9988,2338 m².
Die Wahl eines anderen CRS wie EPSG: 4326 liefert 9990,5339 m², da die Berechnung auf einem anderen Ellipsoid (WGS84 anstelle von Bessel) erfolgt.
Vector --> Geometry Tools --> Export/Add Geometry Columns
scheint korrekte Werte zu liefern.Der Fehler hat bereits einige Tickets: https://issues.qgis.org/issues/10966 und https://issues.qgis.org/issues/12473
quelle