Gibt es bei einem bestimmten Koordinatensystem der Zustandsebene (ob NAD27 oder NAD83) Ressourcen für die Umrechnung in Längen- und Breitengrade?
Gibt es bei einem bestimmten Koordinatensystem der Zustandsebene (ob NAD27 oder NAD83) Ressourcen für die Umrechnung in Längen- und Breitengrade?
Antworten:
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 .
Wenn Sie die relevanten EPSG-Codes oder proj.4-Parameter kennen, sind beide gdaltransform
und 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 gdaltransform
versteht. 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.336190851
zurückkehren -120 33.9999999999996
.
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.
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.
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.
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.
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
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.
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