3

我需要根据地图边界在谷歌地图上显示标记,并计算标记之间的距离。
将 lat/lng 坐标从 SQL 服务器操作到 Google 地图、空间或 lat/lng 比较的最佳选择是什么?
似乎 MVC ef5 空间比我需要的要多,但是纬度/经度比较不正确,因为地球不平坦。

编辑: 示例1:

x1,y1--------------x2,y2
  |                  |
  |                  |
  |                  |
x3,y3--------------x4,y4

我需要根据地图可见区域范围存储和查找 lat/lng 可见谷歌地图区域中的所有地址。

示例 2:

我需要列出标记 X 公里半径内的所有地址。

4

2 回答 2

2

要计算两对纬度/经度投影坐标之间的距离,您需要文森蒂的公式

于 2013-02-25T00:05:33.047 回答
1

如果您使用 sql server 2008 R2 要存储纬度和经度,则会退出几何的特殊数据类型,我建议您阅读这篇文章空间数据类型

要计算两点之间的距离,你有两个 opctios

专门为此设计的Levenshtein距离计算工具

或者,您可以使用包含该方法的谷歌地图 API 的几何库为应用程序的客户端进行计算。并接收两个 lat/lng

google.maps.geometry.spherical.computeDistanceBetween();
于 2013-02-25T00:17:36.110 回答