9

Java のPROJ.4または JavaScript のProj4jsを使用して、SWEREF99 TM の地図投影座標に変換したい WGS84 の GPS 座標があります。

PROJ.4とその使用方法のドキュメントを見つけるのは難しいです。良いリンクがあれば、コメントとして投稿してください。

SWEREF99 TMの PROJ.4 パラメータは次のとおりです。+proj=utm +zone=33 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs

変換にPROJ.4 Javaライブラリを使用しようとLat: 55° 00’ N, Long: 12° 45’ Eしましたが、次のコードで試しました:

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());

これは私に要点を与えますPoint2D.Double[5197915.86288144, 1822635.9083898761]が、私はN: 6097106.672, E: 356083.438 何を間違っているのですか? 代わりにどのメソッドとパラメーターを使用する必要がありますか?

正しい値はLantmäterietから取得されます。

proj.transform(testLatLng, new Point2D.Double());使用する正しい方法であるかどうかはわかりません。

4

1 に答える 1

3

55は緯度ですか経度ですか?

編集:緯度と経度のパラメーターを単純に交換する必要があるようです。

EDIT2:すなわち

 Point2D.Double testLatLng = new Point2D.Double(12.7500, 55.0000); 
于 2010-03-18T13:15:01.803 に答える