Geotum
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, [email protected]
许可
Hamilton 在 MIT 许可证下可用。更多信息请查看 LICENSE 文件。