Geotum

Version License Platform

Geotum 用于纬度/经度坐标对和 UTM 坐标点之间的转换。

用法

// Converting to UTM (near Santa Cruz)
let latitude = 37.0837
let longitude = -121.9981
let latLonCoordinate = LatLonCoordinate(latiudinalDegrees: latitude, longitudinalDegrees: longitude)
UTMConverter(datum: .wgs84).utmCoordinatesFrom(coordinates: latLonCoordinate)

// Converting to Lat Lon
let utmCoordinate = UTMPoint(easting: 589048.6, northing: 4104627, zone: 10, hemisphere: .northern)
UTMConverter(datum: .wgs84).coordinateFrom(utm: utmCoordinate)

精度

如下文详述,此库存在一个常见的 UTM 转换问题,即极点(UTM 不支持极点)和斯瓦尔巴群岛/挪威问题。

我已意识到这些问题,并计划在不久后修复它们。

对比

另一个库 GeodeticUTMConverter 可以工作,但已不再维护。由于我 (@pducks32) 在学术界和专业领域都处理过大地测量学,因此我想创建自己的库来处理转换。

目前,此库只是复制了 GeodeticUTMConverter 并支持 macOS,但在未来将进行扩展,以修复该源代码中的重大问题(例如 斯瓦尔巴群岛问题)。

安装

Geotum 可通过 CocoaPods 获得。要安装它,只需将以下行添加到您的 Podfile

pod "Geotum"

作者

Patrick Metcalfe, git@patrickmetcalfe.com

许可

Hamilton 基于 MIT 许可发布。有关更多信息,请参阅 LICENSE 文件。