2017-08-11 79 views
1

我有一個經緯度和中心點的數組。如何在特定範圍內獲取附近的位置?

{ 
    center: { 
    lat: 10.002, 
    lng: 20.003 
    }, 
    all: [ 
    { 
     lat: 20, 
     lng: 50 
    }, 
    { 
     lat: 10, 
     lng: 20.000001 
    }, 
    // ... 
    ] 
} 

我想知道如何在10公里或其他特定範圍內獲得附近的位置。有沒有關鍵字或圖書館可以幫助我做到這一點?

回答

0

您可以使用geohash。
標準geohash可以給你一個很好的起點,因爲散列表示的位置,所以你可以根據你的精確度在特定掩碼上的散列進行分組。
參考:https://en.wikipedia.org/wiki/Geohash

這種方法很簡單,有很多庫。
但它也遭受極點失真和邊緣情況。

但是我已經實現的替代算法來解決這些問題:https://github.com/linehrr/geohash
缺點是精度是預先確定的,所以掩蔽不會工作,因爲它不是線性的。

希望這有助於。

相關問題