Frage

Ich habe eine GPS-Koordinate in WGS84, die ich mithilfe von SWEREF99 TM in eine Kartenprojektionskoordinate umwandeln möchte PROJ.4 in Java bzw Proj4js in JavaScript.

Es ist schwer, Dokumentation dafür zu finden PROJ.4 und wie man es benutzt.Wenn Sie einen guten Link haben, posten Sie ihn bitte als Kommentar.

Die PROJ.4-Parameter für SWEREF99 TM Ist +proj=utm +zone=33 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs

Ich habe versucht, a zu verwenden PROJ.4 Java-Bibliothek zum Umwandeln Lat: 55° 00’ N, Long: 12° 45’ E und habe es mit diesem Code versucht:

String[] proj4_w = new String[] {
 "+proj=utm",
 "+zone=33",
 "+ellps=GRS80",
 "+towgs84=0,0,0,0,0,0,0",
 "+units=m",
 "+no_defs"
};

Projection proj = ProjectionFactory.fromPROJ4Specification(proj4_w);  

Point2D.Double testLatLng = new Point2D.Double(55.0000, 12.7500);
Point2D.Double testProjec = proj.transform(testLatLng, new Point2D.Double());

Das bringt mich auf den Punkt Point2D.Double[5197915.86288144, 1822635.9083898761] aber ich sollte es sein N: 6097106.672, E: 356083.438 Was mache ich falsch?Und welche Methode und Parameter sollte ich stattdessen verwenden?

Die korrekten Werte werden übernommen Lantmäteriet.

Ich bin mir nicht sicher, ob proj.transform(testLatLng, new Point2D.Double()); ist die richtige Methode.

War es hilfreich?

Lösung

55 ist Breiten- oder Längengrad?

BEARBEITEN:Es scheint, dass Sie einfach Lat- und Long-Parameter vertauschen sollten.

EDIT2:d.h.

 Point2D.Double testLatLng = new Point2D.Double(12.7500, 55.0000); 
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top