我想知道我如何計算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比較GPS位置
- 2. 地理位置異步iOS
- 3. 谷歌地圖比較位置
- 4. 比較GPS位置
- 5. 如何比較Android中的地理位置?
- 6. 我不能讓Linq比較地理位置?
- 7. 位置管理器獲取和比較位置
- 8. iOS上的Google地理位置
- 9. iOS中的地理位置通知
- 10. iOS地理位置居住事件
- 11. ios的地理位置準確性
- 12. 比較位(一次一個位置)
- 13. 如何比較iOS中的位圖?
- 14. 放置比較器的最佳位置
- 15. iOS iP地址比較IP範圍
- 16. HTML/JS地理定位和比較座標
- 17. 比較地理定位以確定Ruby中的重複項目
- 18. iOS:從沒有地圖的當前位置獲取地理位置的角度
- 19. IPV6地址的按位比較
- 20. Google+地理位置
- 21. undefined地理位置
- 22. 地理位置elasticsearch
- 23. OrientDB地理位置
- 24. HTML5地理位置
- 25. SQL:地理位置
- 26. Xamarin.iOS地理位置
- 27. 地理位置API
- 28. 地理位置鉻
- 29. Codeception地理位置
- 30. 地理位置iPhone
因子對於度數是錯誤的:0.01745329是正確的。如果您正在進行多次長距離計算,則錯誤可能會加起來。 – Ozzah 2011-06-14 23:59:43
你說得對。我編輯了答案。 – 2011-06-15 13:12:03