iOS 两个位置之间的 GPS 距离计算
iOS GPS Distance Calculations between 2 locations
我创建了一个显示 2 iOS 设备之间距离的应用程序。我有
使用 GPSKit 的坐标并使用 ZFHaversine 计算距离。它们都是来自 cocoapods.org.
的库
现在我的问题是即使设备并排放置,记录的距离也是 +/- 70 米。我正在尝试找到一种方法来使计算的距离至少达到 +/- 5 米。
提前致谢。
您可能希望在这种情况下使用 CoreBluetooth。 AFAIK CoreBluetooth 可以测量信号强度,这样您就可以更精确地计算距离。
导入核心位置框架。以 CLLocation
的形式获取坐标
CLLocation *locA = [[CLLocation alloc] initWithLatitude:latitude1 longitude:longitude1];
CLLocation *locB = [[CLLocation alloc] initWithLatitude:latitude2 longitude:longitude2];
现在获取距离
CGFloat distance = [locA distanceFromLocation:locB];
只是为了更新,现在我已经在 ZFHaversine pod 上使用了 Equirectangular Approximation 公式。这在较短的距离上更准确。
谢谢
我创建了一个显示 2 iOS 设备之间距离的应用程序。我有 使用 GPSKit 的坐标并使用 ZFHaversine 计算距离。它们都是来自 cocoapods.org.
的库现在我的问题是即使设备并排放置,记录的距离也是 +/- 70 米。我正在尝试找到一种方法来使计算的距离至少达到 +/- 5 米。
提前致谢。
您可能希望在这种情况下使用 CoreBluetooth。 AFAIK CoreBluetooth 可以测量信号强度,这样您就可以更精确地计算距离。
导入核心位置框架。以 CLLocation
的形式获取坐标CLLocation *locA = [[CLLocation alloc] initWithLatitude:latitude1 longitude:longitude1];
CLLocation *locB = [[CLLocation alloc] initWithLatitude:latitude2 longitude:longitude2];
现在获取距离
CGFloat distance = [locA distanceFromLocation:locB];
只是为了更新,现在我已经在 ZFHaversine pod 上使用了 Equirectangular Approximation 公式。这在较短的距离上更准确。
谢谢