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?

Richard Morgan
quelle

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 .

Reed Copsey
quelle
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.

scw
quelle
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.

Vadim
quelle
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.

Dennis
quelle
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
3

Wenn Sie es selbst erstellen möchten, finden Sie hier ein Dokument aus dem National Geodetic Survey, das die Transformationen beschreibt:

http://www.ngs.noaa.gov/PUBS_LIB/ManualNOSNGS5.pdf

Sie müssen noch die spezifischen Parameter für die Projektion von Interesse kennen.

Andy
quelle
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.

Jersey Andy
quelle
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

donatsafe
quelle
1

Diese Seite kann hilfreich sein, wenn Sie nur einen Punkt konvertieren möchten. Es hat bei mir nicht funktioniert, scheint aber in den meisten Bereichen zu funktionieren.

http://www.earthpoint.us/stateplane.aspx

Sean Hirschi
quelle