我想知道我如何計算iPhone用戶位置和存儲在plist中的給定座標之間的距離?iOS比較地理位置
1
A
回答
6
您可以使用CLLocation
方法distanceFromLocation:
來計算兩個CLLocation
之間的對象。您可以使用CLLocationManager
來獲取用戶的當前位置,並且可以使用initWithLatitude:longitude:
初始值設定項爲座標創建一個CLLocation
實例。
distanceFromLocation:
返回以米爲單位的距離。
1
這是計算以點爲單位的實例的一般公式,單位爲公里。
acos(sin(lat1rad) * sin(lat2rad) + cos(lat1rad) * cos(lat2rad) * cos(lon2rad - lon1rad))) * 6378.1
6378.1是約。以千米爲單位的地球半徑。確保你用弧度表示de值,而不是度數。爲以防萬一,將度數轉換爲弧度最簡單的方法是:
radians = (degrees * 0.01745329) // degrees * pi over 180
編輯:固定公式角度和弧度之間的轉換。謝謝Ozzah!
相關問題
- 1. 地理位置異步iOS
- 2. 谷歌地圖比較位置
- 3. 如何比較Android中的地理位置?
- 4. 位置管理器獲取和比較位置
- 5. iOS中的地理位置通知
- 6. 比較位(一次一個位置)
- 7. 地理位置iPhone
- 8. 地理位置API
- 9. Xamarin.iOS地理位置
- 10. 地理位置elasticsearch
- 11. 地理位置WatchPosition
- 12. Codeception地理位置
- 13. SQL:地理位置
- 14. RikuloGap地理位置
- 15. iOS比較功能
- 16. iOS圖像比較
- 17. 比較地點
- 18. 將UITouch位置與UIImageView矩形比較
- 19. 跨瀏覽器比較文檔位置
- 20. 如何比較字符串位置?
- 21. SSE4內存差別位置比較
- 22. HTML 5地理位置手錶位置
- 23. Java位比較,bitset?
- 24. 比較當前的位置到其他位置
- 25. ImmutableJS在地圖設置與深比較
- 26. 反應原生。我找不到我目前的位置(地理位置)IOS
- 27. Java比較地址
- 28. 比較IP地址
- 29. 地址和地理位置地址
- 30. Android - HTML地理位置
因子對於度數是錯誤的:0.01745329是正確的。如果您正在進行多次長距離計算,則錯誤可能會加起來。 – Ozzah 2011-06-14 23:59:43
你說得對。我編輯了答案。 – 2011-06-15 13:12:03