2012-05-11 167 views
9

Python中是否有任何包允許在球體表面上對經度/緯度進行類似kdtree的操作? (這需要適當地考慮球面距離以及經度中的環繞)。KDTree經度/緯度

回答

6

二叉搜索樹無法處理設計中極座標表示的環繞。您可能需要將座標轉換爲3D笛卡爾空間,然後應用您最喜愛的搜索算法,例如kD-Tree,Octree等。

或者,如果您可以將座標的輸入範圍限制爲表面,您可以將適當的地圖投影應用到該區域,即不會過多扭曲區域形狀的區域,並在這些沒有環繞的笛卡爾地圖座標上應用標準二叉搜索樹。

+1

轉換到三維笛卡爾空間是要走的路 - 謝謝! – astrofrog