如何计算两对坐标(纬度/经度)之间的距离

Posted

技术标签:

【中文标题】如何计算两对坐标(纬度/经度)之间的距离【英文标题】:How to calculate the distance between two pairs of coordinates (latitude/longitude) 【发布时间】:2019-02-20 03:55:36 【问题描述】:

例如,我有两对坐标:(103.82 W, 32.024 N) 和 (104.2 W, 32.587 N)。我试图弄清楚如何计算这两个点之间的距离,然后以 DMS 形式表示该距离。当我使用距离公式时,我得到一个十进制数,当我将其转换为 DMS 格式时,它不能准确地表示我想要的数字。我应该使用距离公式,所以我不确定我在这里遗漏了什么或者我可能做错了什么。我不相信我需要为此使用半正弦公式。

任何帮助将不胜感激!

【问题讨论】:

这是一个编码问题吗?您使用什么语言?你试过什么,你的代码或伪代码在哪里? 【参考方案1】:

Rosetta Code web site 提供各种计算机语言(Java、javascript、Python 等)的工作代码示例,用于使用 Haversine 公式计算两个纬度/经度坐标之间的距离。

您可以使用此online distance calculator 验证您的距离结果以进行比较。

给定十进制度坐标,您可以将该数字转换为 DMS 组件,反之亦然。该公式已在相关answer 中得到解答,并且有online converters 可以在DMS 和十进制度之间进行转换。

【讨论】:

以上是关于如何计算两对坐标(纬度/经度)之间的距离的主要内容,如果未能解决你的问题,请参考以下文章

PHP 计算两个坐标之间的距离(纬度,经度)

JavaScript 用纬度和经度坐标计算两点之间的距离

怎么算经纬度和距离呢?

如何确定两组纬度/经度坐标之间的距离?

C# 在 Linq 查询 WHERE 语句中返回两个纬度/经度坐标之间的计算距离

php 使用WP REST API计算纬度和经度坐标之间的距离,并返回按用户c的距离排序的帖子