UTM坐标转换

Carthage compatible MIT Licence

在纬度/经度和 UTM(通用横轴墨卡托)坐标系统之间转换。转换发生在自定义的 struct UTMCoordinate 和 CoreLocation 的 CLLocationCoordinate2DCLLocation 之间。

系统要求

安装

Carthage

要使用 Carthage 将 UTMConversion 集成到你的 Xcode 项目中,请在你的 Cartfile 中指定它

github "wtw-software/UTMConversion" ~> 1.4

CocoaPods

要使用 CocoaPods 将 UTMConversion 集成到你的 Xcode 项目中,请在你的 Podfile 中指定它

target 'MyApp' do
  pod 'UTMConversion', '~> 1.4'
end

然后在你的终端内,或从 CocoaPods.app 运行 pod install

用法

转换为 UTM 坐标

import CoreLocation
import UTMConversion

let coordinate = CLLocationCoordinate2D(latitude: 63.430493678423012, longitude: 10.394966844991798)
let utmCoordinate = coordinate.utmCoordinate()

let location = CLLocation(latitude: 63.430493678423012, longitude: 10.394966844991798)
let utmCoordinate2 = location.utmCoordinate()

从 UTM 坐标转换

import CoreLocation
import UTMConversion

let utmCoordinate = UTMCoordinate(northing: 7034313, easting: 569612, zone: 32, hemisphere: .northern)
let coordinate = utmCoordinate.coordinate()
let location = utmCoordinate.location()

基准面

可以指定你自己的基准面(极半径和赤道半径),默认值是 WGS84,这是 WGS 标准的最新修订版。

import CoreLocation
import UTMConversion

let utmCoordinate = UTMCoordinate(northing: 7034313, easting: 569612, zone: 32, hemisphere: .northern)
let datum = UTMDatum(equitorialRadius: 6378137, polarRadius: 6356752.3142)
let coordinate = utmCoordinate.coordinate(datum: datum)