我当前的项目正在与当地城市规划部门发布的中央地理编码服务接口。该服务主要用于测量,因此以 UTM X-Y 格式返回坐标。我的系统将坐标存储为十进制纬度和经度,以便与 Google 地球和其他地图工具集成。
我想提出一种算法,用于在所有情况下将 X-Y 转换为纬度和经度。我无法找到任何描述转换的文本;我通过 Google 找到的最多的是 Excel Visual Basic 和 FORTRAN 形式的原始源代码。我相信一个有用的通用解决方案将对整个社区有益。
在 Java 中,我会使用 OpenMap 转换器 将 UTM 中的点表达式转换为使用纬度和经度的点表达式(假设 GPS 中最常用的 WGS-84 椭球体)。
OpenMap 是开源的,我会发布一个到他们的下载页面的链接,但他们有一个简短的许可证脚本。因此,为了避免失礼,我不会进行深层链接。相反,请前往他们的主页并单击下载。
这应该可以直接解决您的问题,或者至少为您指出一个有用的算法。