【问题标题】:Select GPS coordinates with close proximity from database从数据库中选择非常接近的 GPS 坐标
【发布时间】:2013-08-15 07:20:23
【问题描述】:

我有一个表格,其中包含大量纬度和经度值,格式为 -26.0346511492626 和 28.0677509307861。用户可以从谷歌地图中选择他的地址,我必须确定所选地址是否在任何已捕获的 GPS 坐标的 50 公里范围内。

由于该表包含大量值,因此我必须避免遍历所有现有 GPS 坐标来计算距离。有没有办法只选择与所选地址非常接近的坐标?然后我可以使用较小的数据集来计算点之间的距离。

【问题讨论】:

  • 是的,您可以使用相对于您/用户位置的一些容差值来查询数据库。找出所有添加到用户位置的公差值的GPS,它也会减少数据集。

标签: c# sql google-maps-api-3 gps


【解决方案1】:

给定一个特定的经度,您应该能够确定北 50 公里的经度和南 50 公里的经度(假设在两极 50 公里范围内没有地址)。对纬度做同样的事情。搜索适合这两个范围的值。在这个子集中找到最小的距离。显然,边界内的某些点可能仍然在 sqrt(50*50*2)km 之外,因此您仍然需要与之进行比较,而不仅仅是取最小值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-12
    • 1970-01-01
    • 2013-03-17
    • 2016-10-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多