应用引擎 - 最接近当前位置的点

时间:2011-12-26 10:31:27

标签: html5 google-app-engine geolocation

使用以下技术确定最接近用户当前位置的航点的最有效方法是什么:

  • HTML5地理位置
  • Google App Engine,其中航点数据库存储为坐标

我意识到我可以计算当前位置和所有存储的航点之间的成对距离,但是可能有一种方法可以优化它,可能是为了将来的查询?

PS。我在全市范围内这样做,所以平坦的距离就足够了。

1 个答案:

答案 0 :(得分:0)

就个人而言,我会遵循这条路线:

  1. 使用查询获取当前位置周围某个边界框内的所有路点。一个简单的不等式查询可以做到这一点:

  2. 如果找不到航点,请放大边界框。如果有太多,缩小它。重复1点。

  3. 当您获得合理数量的航点时,只需计算到每个点的距离并使用最近的航点。您可以使用多种近似值来避免使用完整的地理距离计算:http://en.wikipedia.org/wiki/Geographical_distance