如何将UTM坐标转换为纬度和经度? [重复]

时间:2022-04-10 16:05:41

Duplicates:

My current project is interfacing with a central geocoding service published by the local city planning department. The service is designed primarily for surveying, and as such returns coordinates in a UTM X-Y format. My system stores coordinates as decimal latitude and longitude for integration with Google Earth and other mapping tools.

我目前的项目是与当地城市规划部门发布的*地理编码服务接口。该服务主要用于测量,因此以UTM X-Y格式返回坐标。我的系统将坐标存储为十进制纬度和经度,以便与Google地球和其他地图工具集成。

I'd like to come up with an algorithm for converting from X-Y to latitude and longitude for all cases. I have not been able to locate any texts describing the conversion; the most I've been able to find via Google is raw source code in the form of Excel Visual Basic and FORTRAN. I believe a useful general solution would be beneficial to the community at large.

我想提出一种算法,可以在所有情况下从X-Y转换为纬度和经度。我找不到任何描述转换的文字;我通过Google找到的最多的是Excel Visual Basic和FORTRAN形式的原始源代码。我相信一个有用的一般解决方案对整个社会都有益。

3 个解决方案

#1


You need a map projection library to do this.

您需要一个地图投影库才能执行此操作。

There are many libraries available that are open source. One of the most complete is PROJ.4.

有许多可用的库是开源的。其中最完整的是PROJ.4。

It is wrapped and used internally by many simpler libraries, such as GDAL.

它由许多更简单的库(如GDAL)内部包装和使用。

This will allow you to go from UTM->LatLon (with many options), UTM->State Plane, or from any common projection to any other common projection.

这将允许您从UTM-> LatLon(具有许多选项),UTM-> State Plane,或从任何常见投影到任何其他常见投影。

#2


In Java, I would use the OpenMap converter from a point's expression in UTM to one using Latitude and Longitude (assuming a WGS-84 ellipsoid which is most commonly used in GPS).

在Java中,我会使用OpenMap转换器从UTM中的点表达式到使用纬度和经度的表达式(假设在GPS中最常用的WGS-84椭球)。

OpenMap is open source and I would post a link to their download page but they have a short license script in the way. So, to avoid being rude, I won't deep link. Instead, head to their homepage and click Downloads.

OpenMap是开源的,我会发布一个链接到他们的下载页面,但他们有一个简短的许可证脚本。所以,为了避免粗鲁,我不会深刻的联系。相反,请前往他们的主页并单击“下载”。

That should either solve your problem directly or at least point you towards a useful algorithm.

这应该直接解决你的问题,或者至少指向一个有用的算法。

#3


you could try http://www.gaia-gis.it/spatialite/

你可以尝试http://www.gaia-gis.it/spatialite/

#1


You need a map projection library to do this.

您需要一个地图投影库才能执行此操作。

There are many libraries available that are open source. One of the most complete is PROJ.4.

有许多可用的库是开源的。其中最完整的是PROJ.4。

It is wrapped and used internally by many simpler libraries, such as GDAL.

它由许多更简单的库(如GDAL)内部包装和使用。

This will allow you to go from UTM->LatLon (with many options), UTM->State Plane, or from any common projection to any other common projection.

这将允许您从UTM-> LatLon(具有许多选项),UTM-> State Plane,或从任何常见投影到任何其他常见投影。

#2


In Java, I would use the OpenMap converter from a point's expression in UTM to one using Latitude and Longitude (assuming a WGS-84 ellipsoid which is most commonly used in GPS).

在Java中,我会使用OpenMap转换器从UTM中的点表达式到使用纬度和经度的表达式(假设在GPS中最常用的WGS-84椭球)。

OpenMap is open source and I would post a link to their download page but they have a short license script in the way. So, to avoid being rude, I won't deep link. Instead, head to their homepage and click Downloads.

OpenMap是开源的,我会发布一个链接到他们的下载页面,但他们有一个简短的许可证脚本。所以,为了避免粗鲁,我不会深刻的联系。相反,请前往他们的主页并单击“下载”。

That should either solve your problem directly or at least point you towards a useful algorithm.

这应该直接解决你的问题,或者至少指向一个有用的算法。

#3


you could try http://www.gaia-gis.it/spatialite/

你可以尝试http://www.gaia-gis.it/spatialite/