从坐标系 WGS84 转换为 SWEREF991330

Converting from coordinate system WGS84 to SWEREF991330

我一直在寻找一种方法将我的 iOS 应用程序(用 Swift 编写)中的 GPS 坐标转换为 SWEREF99(在我的例子中是 1330),但似乎无法找到 "easy" 这样做的方法。在尝试自己编写函数之前,我需要了解什么?

示例:

纬度:56.545414, 经度:13.469853

应该return:

N 6269294, E 148146

一个Swift func 将不胜感激!感谢您的帮助。

没有简单的方法。
您需要一个坐标转换库。 该库是用 C 编写的,您可以在 ios 中导入。 这里解释了如何从 Swift 调用 C 函数: How to call C from Swift?

在该库中,您传入找到的坐标系定义字符串 在 http://spatialreference.org/ref/epsg/sweref99-13-30/

如果出于某些原因您想自己实施, 您必须阅读横向墨卡托投影的工作原理。 此外,您需要了解坐标系如何转换。 有可用的 WGS84 到 UTM 代码。 Sweref 是 UTM 转换的特殊变体,仅更改了输入参数。 (您在上面的 link 处找到了) 此解决方案可能是最快获得 运行.