经纬度距离计算器
本经纬度距离计算器使用 Haversine 公式计算地球表面两个 GPS 坐标之间的大圆距离。输入两个位置的纬度和经度,获取以千米、英里和海里表示的距离,以及初始方位角和地理中点。
经纬度距离计算器
计算地球表面两点之间的最短距离
使用 N/S 表示纬度方向,E/W 表示经度方向
点 1
点 2
常见问题
如何根据经纬度计算两点间的距离?
最常用的方法是 Haversine 公式,它考虑了地球的球形曲率,计算地球表面两点之间的大圆距离。先将纬度和经度从度数转换为弧度,计算差值,代入公式:a = sin²(Δlat/2) + cos(lat1) × cos(lat2) × sin²(Δlon/2),然后 d = 2R × arcsin(√a),其中 R 为地球半径(6371 km 或 3959 英里),结果即为最短地表路径距离。
什么是 Haversine 公式?
Haversine 公式根据两点的纬度和经度计算球面上两点之间的大圆距离。它使用 haversine 函数:hav(θ) = sin²(θ/2)。与球面余弦定理相比,该公式对小距离更具数值稳定性。历史上它在航海导航中至关重要,至今仍是 GPS 距离计算的标准方法。
GPS 距离计算的精度如何?
Haversine 公式将地球视为完美球体,对大多数实际应用的精度在 0.5% 以内。若需更高精度(0.01% 以内),文森特公式采用椭球体地球模型。消费级设备的 GPS 坐标本身通常精确到 3–5 米。对于 1 km 以内的距离,平面近似也能给出合理结果。
大圆距离与直线距离有什么区别?
大圆距离沿地球弯曲表面的最短路径,类似飞机的飞行航线。直线(欧几里得)距离是两点之间穿过地球内部的直线。短距离时差异可忽略不计;长距离时直线距离始终更短,但在地球表面实际无法行进。大圆距离用于导航和旅行规划。
如何将度数换算为距离?
纬度每一度约等于 111.32 km(69.17 英里),在全球各处基本恒定。经度每一度随纬度变化:赤道处约 111.32 km,极点处为零。公式为:经度距离 = 111.32 × cos(纬度) km/度。这些是近似值;精确计算请使用带精确坐标的 Haversine 公式。
什么是海里?
海里是海上和航空导航中使用的距离单位,定义为恰好 1852 米(1.15078 法定英里或 6076 英尺)。它最初定义为沿任意子午线的纬度弧分。这使其在导航中非常便捷:海图上纬度的一分弧等于一海里。以海里每小时表示的速度称为节(knot)。
纬度一度有多远?
纬度一度约为 111.32 千米(69.17 英里),在全球范围内几乎保持不变。这一微小变化(赤道处 110.57 km,极点处 111.69 km)是因为地球是一个在极点略微扁平的扁球体。纬度一分约为 1.85 km(一海里),一秒约为 30.87 米。
Haversine 公式和文森特公式有什么区别?
Haversine 公式将地球视为完美球体(半径约 6371 km),精度约为 0.5%(长距离误差最多约 30 km)。文森特公式将地球建模为 WGS-84 椭球体,精度约为 0.5 mm。对大多数实际应用而言 Haversine 已经足够;文森特公式适用于测量和大地测量。
如何将度分秒坐标转换为十进制度数?
十进制度数 = 度 + 分/60 + 秒/3600。例如,40°26'46"N = 40 + 26/60 + 46/3600 = 40.4461°。南纬和西经为负数:73°59'W = -73.9833°。
两个 GPS 点之间的方位角是什么?
方位角是从一点到另一点的罗盘方向,从正北顺时针量起(0°–360°)。从纽约到伦敦的初始方位角约为 51°(东北方向)。沿大圆路线行进时方位角会持续变化。
如何找到某个地点的经纬度?
在 Google 地图中,右键点击任意位置,菜单顶部即显示坐标。iPhone 上可放置大头针后点击查看坐标。Android 上长按某点可放置大头针。GPS 应用和设备的设置中也会显示坐标。
相关计算器
什么是经纬度?
经纬度构成了一套地理坐标系统,可唯一标识地球上的每一个点。纬度测量南北方向的位置,范围从 -90°(南极)到 +90°(北极),赤道为 0°。经度测量东西方向的位置,范围从 -180° 到 +180°,本初子午线(英国格林威治)为 0°。当使用足够多的小数位时,一对经纬度坐标可以精确到亚米级定位地球上的任意位置。GPS 设备、地图应用和测量设备都依赖这套坐标系统。
Haversine 公式
Haversine 公式计算球面上两点之间的大圆距离,即沿球面的最短路径。它使用 haversine 函数 hav(θ) = sin²(θ/2),定义如下:
a = sin²(Δφ/2) + cos(φ₁) · cos(φ₂) · sin²(Δλ/2)
d = 2R · arctan2(√a, √(1-a))
其中 φ₁ 和 φ₂ 是以弧度表示的纬度,Δφ 是纬度差,Δλ 是经度差,R 是地球平均半径(6371 km)。Haversine 公式即使对小距离也具有数值稳定性,这使其在 GPS 应用中优于球面余弦定理。它在海上导航历史上具有重要意义,至今仍是计算坐标间距离的标准方法。
Haversine 与文森特公式:精度对比
测地线距离计算主要有两种公式,选择哪种取决于应用所需的精度。
| 方法 | 地球模型 | 精度 | 速度 | 适用场景 |
|---|---|---|---|---|
| Haversine | 完美球体(R = 6371 km) | 约 0.5%(长距离误差最多约 30 km) | 非常快 | 导航、旅行规划、通用场景 |
| 文森特(Vincenty) | WGS-84 扁球体 | 约 0.5 mm | 迭代计算(较慢) | 测量、大地测量、高精度制图 |
对大多数实际应用而言,Haversine 公式精度已足够。只有在需要亚米级精度时,才需要文森特公式,例如土地测量、大地测量参考网络和精密制图。
如何计算两坐标点之间的距离
以下是从纽约市(40.7128°N,74.0060°W)到伦敦(51.5074°N,0.1278°W)距离计算的示例。
- 转换为弧度:φ₁ = 40.7128° × π/180 = 0.7106 rad,φ₂ = 51.5074° × π/180 = 0.8989 rad,Δφ = 0.1883 rad,Δλ = 1.2891 rad
- 计算 a:a = sin²(0.0942) + cos(0.7106) · cos(0.8989) · sin²(0.6446) = 0.0089 + 0.7597 × 0.6266 × 0.3625 = 0.1812
- 计算 c:c = 2 · arctan2(√0.1812, √0.8188) = 0.8742 rad
- 计算距离:d = 6371 × 0.8742 = 5567 km(3459 英里)
纽约到伦敦的实际飞行距离约为 5570 km,验证了 Haversine 公式在该航线上的准确性。
坐标格式:十进制度数与度分秒
地理坐标有两种常见格式:十进制度数(DD)和度分秒(DMS)。
换算公式(度分秒转十进制度数):
示例:40°26'46"N = 40 + 26/60 + 46/3600 = 40.4461°
南纬和西经为负数:73°59'0"W = -(73 + 59/60 + 0/3600) = -73.9833°
大多数 GPS 设备和地图 API 使用十进制度数。度分秒格式在纸质地图和传统导航中仍然常见。本计算器支持两种格式输入,自动换算以确保距离计算准确。
主要城市对之间的距离
以下是使用 Haversine 公式计算的世界主要城市之间的参考距离。
| 出发城市 | 目的城市 | 距离(km) | 距离(英里) | 初始方位角 |
|---|---|---|---|---|
| 纽约 | 伦敦 | 5,570 | 3,461 | 51° |
| 洛杉矶 | 东京 | 8,815 | 5,478 | 305° |
| 悉尼 | 新加坡 | 6,288 | 3,907 | 335° |
| 迪拜 | 孟买 | 1,926 | 1,197 | 104° |
| 圣保罗 | 开普敦 | 6,810 | 4,231 | 133° |
| 巴黎 | 莫斯科 | 2,486 | 1,544 | 61° |
| 北京 | 柏林 | 7,354 | 4,569 | 329° |
| 开罗 | 罗马 | 2,131 | 1,324 | 318° |