![]() |
||
---|---|---|
.swiftpm/xcode/package.xcworkspace | ||
UTMConversion | ||
UTMConversion.xcodeproj | ||
UTMConversionTests | ||
.gitignore | ||
LICENSE | ||
Package.swift | ||
README.md | ||
UTMConversion.podspec |
README.md
UTMConversion
Convert between latitude/longitude and the UTM (Universal Transverse Mercator) coordinate systems. The conversion happens between a custom struct
UTMCoordinate
and CoreLocation's CLLocationCoordinate2D
and CLLocation
.
Requirements
- iOS 12.0+ / macOS 10.10+
Installation
Carthage
To integrate UTMConversion into your Xcode project using Carthage, specify it in your Cartfile
:
github "wtw-software/UTMConversion" ~> 1.4
CocoaPods
To integrate UTMConversion into you Xcode project using CocoaPods, specify it in you Podfile
:
target 'MyApp' do
pod 'UTMConversion', '~> 1.4'
end
Then run pod install
inside your terminal, or from CocoaPods.app.
Usage
Convert to 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()
Convert from UTM
import CoreLocation
import UTMConversion
let utmCoordinate = UTMCoordinate(northing: 7034313, easting: 569612, zone: 32, hemisphere: .northern)
let coordinate = utmCoordinate.coordinate()
let location = utmCoordinate.location()
Datum
It is possible to specify your own datum (polar and equitorial radius), the default value is WGS84, which is the latest revision of the WGS standard.
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)