是的......在 10 米和 1 公里米处,使用简单的旧毕达哥拉斯定理,您将非常准确。没有人谈论这个真的很荒谬,特别是考虑到你节省了多少计算能力。
证明:取地球的顶部,因为这将是最坏的情况,顶部90英里的经度,所以它是一个中间有纵线相交的圆。

请注意,当您放大到小至 1 公里、距两极仅 50 英里的区域时,最初看起来像一个带有弯曲顶部和底部边界的梯形,基本上看起来像一个近乎完美的矩形。换句话说,我们可以假设 1km 处的直线性,尤其是仅 10M 处。
现在,当然,两极附近的经度比赤道要短得多。例如,任何下巴松弛的乡巴佬都可以看到,当您靠近两极时,由纬线和经线组成的矩形变高,纵横比增加。事实上,经度距离的关系就是赤道乘以沿路径任何地方的纬度余弦。IE。在上图中,“L”(经度距离)和“l”(纬度距离)的度数相同:
LATcm = Latitude at *any* point along the path (because it's tiny compared to the earth)
L = l * cos(LATcm)
因此,我们可以使用毕达哥拉斯定理非常准确地计算距离为 1 公里或更短(甚至在两极附近),如下所示:
Where: latitude1, longitude1 = polar coordinates of the start point
and: latitude2, longitude2 = polar coordinates of the end point
distance = sqrt((latitude2-latitude1)^2 + ((longitude2-longitude1)*cos(latitude1))^2) * 111,139*60
Where 111,139*60 (above) is the number of meters within one degree at the equator,
because we have to convert the result from equator degrees to meters.
关于这一点的一个巧妙之处在于,GPS 系统通常在大约 10m 或更短的距离内进行测量,这意味着您可以通过对这个方程的结果求和来在非常远的距离上获得非常准确的结果。与Haversine 公式一样准确。当您对总数求和时,超微小的错误不会放大,因为它们是一个百分比,与它们相加时保持不变。
然而现实情况是,Haversine 公式(非常准确)并不难,但相对而言,Haversine 将消耗你的处理器至少 3 倍以上,并且根据这个人的说法,计算密集度高达 31 倍:https://blog。 mapbox.com/fast-geodesic-approximations-with-cheap-ruler-106f229ad016。
对我来说,当我使用的系统(谷歌表格)无法为我提供执行半正弦公式所需的有效数字时,这个公式确实对我有用。