Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将WGS84中的坐标转换为PROJ.4投影中的坐标?_Java_Wgs84_Map Projections_Proj4js_Proj - Fatal编程技术网

Java 如何将WGS84中的坐标转换为PROJ.4投影中的坐标?

Java 如何将WGS84中的坐标转换为PROJ.4投影中的坐标?,java,wgs84,map-projections,proj4js,proj,Java,Wgs84,Map Projections,Proj4js,Proj,我有一个WGS84中的GPS坐标,我想用Java或JavaScript将其转换为SWEREF99 TM中的地图投影坐标 很难找到它的文档以及如何使用它。如果你有一个好的链接,请发表评论 项目4参数为+PROJ=utm+zone=33+ellps=GRS80+towgs84=0,0,0,0,0,0+units=m+no_defs 我曾尝试使用a转换纬度:55°00'N,长:12°45'E,并尝试使用此代码: String[] proj4_w = new String[] { "+proj=utm

我有一个WGS84中的GPS坐标,我想用Java或JavaScript将其转换为SWEREF99 TM中的地图投影坐标

很难找到它的文档以及如何使用它。如果你有一个好的链接,请发表评论

项目4参数为
+PROJ=utm+zone=33+ellps=GRS80+towgs84=0,0,0,0,0,0+units=m+no_defs

我曾尝试使用a转换
纬度:55°00'N,长: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.862881441822635.9083898761]
但我应该是
N:6097106.672,E:356083.438
我做错了什么?我应该用什么方法和参数来代替呢

正确的值取自


我不确定是否
proj.transform(testLatLng,newpoint2d.Double())是正确的使用方法。

55是纬度还是经度

编辑:似乎您应该简单地交换lat和long参数

编辑2:即

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