-1
A
回答
1
不幸的是沒有這樣簡單的常數。當你往北走時,經線之間的「步行距離」變得越來越小。如果你恰好在北極旁邊,你可以繞着它走一圈,幾乎沒有任何距離,但你仍然會觸摸到每一個長長的線。
你需要的是球體上兩點之間的great-circle distance。
1
不知道你在做什麼。你想創建一個基於距離點的邊界框嗎?您是否正在尋找一種方法來計算新的緯度/經度,以距離爲單位計算經緯度?
您可以使用曼哈頓函數來獲得距離的近似值(實現lat/long基於近似地球的球體,並且真正計算這需要更多數學),使用forumla計算x和y值
曼哈頓功能:
sqrt(x*x + y*y)
X和Y從緯度/經度:
x = 69.1 * (lat2 - lat1)
y = 53 * (lon2 - lon1)
不過,這方法是很容易出錯的。
還有大圓距離公式,需要使用一些trig,但它可能是值得的,因爲你可以在近似中得到相當不錯的誤差,具體取決於你開始在什麼部分的橢球體(例如lat/long) 。
看看這個頁面:
相關問題
- 1. 知名二進制(WKB)爲十進制經度/緯度
- 2. MySql或PHP函數將經度和緯度轉換爲十進制度
- 3. 查找十進制緯度和長度在特定範圍內訪問
- 4. 經緯度從十六進制值
- 5. PHP函數需要將十六進制轉換爲緯度和經度
- 6. 十六進制數的長度
- 7. 緯度/長度爲NullPointer異常
- 8. 從中心緯度/長度計算平方英里的緯度/長度X方向
- 9. 如何將緯度從十進制度轉換爲DMS格式?
- 10. Sql緯度和經度的十進制字段大小
- 11. 驗證長度和真十進制格式的限制數
- 12. 將谷歌地圖上的十進制英里轉換爲int32
- 13. 如何將GPS經度和緯度從十六進制轉換爲
- 14. 將八進制數轉換爲十進制和十六進制
- 15. 當數值爲數字時,如何將緯度和小數分鐘重新計算爲十進制度數?
- 16. 在Java中將經度緯度轉換爲英里
- 17. 1英里範圍內的所有經度和緯度範圍
- 18. 轉換緯度/經度,以十進制度值
- 19. 節目從緯度和長緯度
- 20. 轉換的固定長度數爲十進制.NET C#
- 21. Mysql可變長度十進制
- 22. 格式化十進制的長度
- 23. 將十進制轉換爲十六進制和十六進制
- 24. 從十六進制數據GREENTEL轉換回緯度
- 25. iphone;使用mapkit處理緯度/經度十進制值
- 26. 如何從Nokia Maps API獲取十進制經度/緯度?
- 27. php驗證十進制格式的緯度/經度字符串
- 28. 如何將二進制轉換爲十進制與長整數?
- 29. 爲十進制數
- 30. Android地圖PolygonOptions緯度和長公里數值
PS:在南極洲的人有每一年中,他們通過所有24個時區運行「在世界各地的比賽」,在大約半公里的距離從南極。這就是爲什麼你不能使用常數的一個例子,因爲整場比賽可能是一兩公里,但在赤道附近,我相信大約4000公里。 – Kasapo
我可以假設我不會用兩極來毀掉它。這是爲了找到兩點之間的距離。我有一個單一的點和一個半徑,並希望得到一個邊界框來環繞該區域...此時,我的用戶不會在乎它實際上是否返回東西5.7英里,當他們要求5(此時) –
如果上述功能的半徑很小,絕對誤差也會很小。我會用它。你不能有一個常數來計算這個......除非你正在一個非常小的地理區域工作。儘管如此,我認爲你會發現你所在地區的最南端和北端的點之間會出現很多扭曲/誤差,即使很小。我不確定您可能會使用哪種GIS系統,但是如果您有權訪問(和使用)PostGIS和PostGreSQL(開源)技術,則可以執行查詢並使數據庫全部顯示出來。可能會爲你矯枉過正。 半徑查詢:http://tinyurl.com/35poqxr – Kasapo