Wie konvertiere ich State Plane-Koordinaten in Latitude-Longitude?


32

Gibt es bei einem bestimmten Koordinatensystem der Zustandsebene (ob NAD27 oder NAD83) Ressourcen für die Umrechnung in Längen- und Breitengrade?

Antworten:


19

Sie müssen sie neu projizieren, um diese Konvertierung durchzuführen.

Proj.4 ist eine sehr Standardbibliothek, die von vielen Softwareprogrammen für Reprojektionen verwendet wird.

Eine Möglichkeit, dies zu verwenden, besteht darin, ein Hilfsprogramm wie gdaltransform zu verwenden, um die Transformation für Sie durchzuführen .


9

Wenn Sie die relevanten EPSG-Codes oder proj.4-Parameter kennen, sind beide gdaltransformund proj.4s cs2cs( man page ) eine gute Route, wie Reed erwähnte.

Wenn Sie sich jedoch ohne diese Informationen befinden, probieren Sie Spatialreference.org aus : Es enthält die Parameter und eine Webkarte für die Durchführung einer Transformation des Lat / Long-Koordinatensystems ( Beispiel mit IL-Zustandsebene ). Da in vielen Projektionen der State-Ebene kein EPSG-Code vorhanden ist, verwenden Sie sr.org, um die Zeichenfolge proj.4 zu finden, die dies gdaltransformversteht. Hier ist ein Beispiel für die Konvertierung von California State Plane Zone V in WGS84 Lat / Long-Paare:

gdaltransform -s_srs '+proj=lcc +lat_1=34.03333333333333 \ 
+lat_2=35.46666666666667 +lat_0=33.5 +lon_0=-118 +x_0=2000000 +y_0=500000 \ 
+ellps=GRS80 +units=m +no_defs' -t_srs epsg:4326

Danach sollte die Eingabe 1815241.25377291 557301.336190851zurückkehren -120 33.9999999999996.


Das ist richtig, aber es gibt einen Tippfehler, das Argument -s_srs wird zweimal angegeben. Der Befehl sollte auf -t_srs:gdaltransform -s_srs '+proj=lcc +lat_1=34.03333333333333 +lat_2=35.46666666666667 +lat_0=33.5 +lon_0=-118 +x_0=2000000 +y_0=500000 +ellps=GRS80 +units=m +no_defs' -t_srs epsg:4326
alvin

@alvin, ich habe den Tippfehler korrigiert, danke für das Heads-up!
SCW

8

Client oder Server? Sprachspezifisch? Einmalig oder lose?

ZB - für Client-Seite - mit JavaScript - OpenLayers + Proj4js verwenden.

0) Importieren Sie alle entsprechenden Bibliotheken

1) erstellen Sie Ihren Punkt

var lonlat = new OpenLayers.LonLat( ....)

2) konvertiere es

lonlat.transform( new OpenLayers.Projection("epsg:XXXX"), new OpenLayers.Projection("epsg:4326"));

Jetzt sind lonlat.lon und lonlat.lat in WGS84 Lon / Lat-Werten.


Dies funktioniert, erfordert jedoch eine benutzerdefinierte Entwicklung. Ich bin mir nicht sicher, ob das OP nur ein brauchbares Werkzeug haben wollte.
Reed Copsey

1
Richtig, ich habe nur ein Beispiel genannt - Client-Seite, Javascript, in Code. OP hat nicht angegeben, wonach er gesucht hat. Sogar die akzeptierte Antwort ist eine Bibliothek. Es gibt auch viele Websites, die Ihnen ein einfaches Formular zur manuellen Eingabe der Koordinaten geben und Sie transformieren lassen.
Vadim

6

Ein kostenloses und extrem einfaches Programm ist CorpsCon, das einzelne Punkte, mehrere Punkte in Textdateien konvertiert und über eine DLL verfügt, die in Programmierumgebungen wie Python verwendet werden kann.

2014-07-09: Der aktualisierte Link lautet http://www.agc.army.mil/Missions/Corpscon.aspx. Wenn Sie auf "CorpsCon herunterladen" klicken, gelangen Sie zu einer Seite, die etwas seltsam und vorübergehend aussieht, aber funktioniert.


Der Link ist ausgefallen. Magst du es von einem anderen?
Scott_B

Ich bin an der Verwendung der Corpscon-DLL in Python interessiert. Gibt es eine Dokumentation dafür, die ich auf der corpscon-Site nicht gesehen habe?
Gary Lester


Vor einiger Zeit habe ich begonnen, pyproj für alle Transformationen in Python zu verwenden. Am Ende des unten aufgelisteten Beitrags können Sie sehen, wie dies in nur wenigen Zeilen sehr einfach gemacht werden kann. dshimer.blogspot.com/2012/11/…
Dennis


2

Eine andere Option (aber nur für NAD83) ist SPCS83 unter http://www.ngs.noaa.gov/PC_PROD/SPCS83 . Es wird in einem Befehlszeilenfenster auf einem PC ausgeführt und entweder interaktiv oder aus einer Textdatei konvertiert. Es enthält Quellcode, wenn Sie wirklich nur den Algorithmus wollen. Die Quelle ist Fortran, was zwar schmerzhaft ist, aber leicht zu entziffern ist, um die Algorithmen herauszubekommen. Siehe auch www.metzgerwillard.us/spcge/spcge.html, ein Front-End für SPCS83 in Google Earth.


2

Testen Sie den kostenlosen Übersetzungsservice. Laden Sie Ihre Daten hoch und geben Sie dann das gewünschte Ausgabe-Koordinatensystem an. Indem Sie dasselbe Format für die Ausgabe als Eingabe auswählen, führen Sie effektiv eine Neuprojektion durch.

Der Dienst ist unter http://fmeserver.com/userweb/sharper/Portal/EasyTranslator/index.html zu finden

und basiert auf dem FME-Produkt. Es gibt auch eine kostenlose 14-Tage-Testversion. www.safe.com



Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.