google-maps-api-3 - 地理距离 : Wolfram Alpha not agree

在测试验证 map 解决方案时,我发现 Google Maps API 和 Wolfram Alpha 之间存在差异。两者都是我信任的来源,所以我只能相信我做错了什么,但就我的生活而言,我无法确定是什么。

例如,乌鸦在伦敦(北纬 51.5°,西经 0.1167°)和布拉格(北纬 50.8°,东经 14.43°)之间飞行的距离为:

Wolfram Alpha : 1036 公里

Google Maps API : 1627 公里

这是一个非常显着的差异。对于到其他位置的距离,它的偏移量相似。我没有混合行驶距离和球面上的直线距离,也没有混合单位(一切都以公里为单位)。对于这两个引擎,我正确地将本初子午线以西的经度视为负数,将其以东的经度视为正数。对于 Google map 测试(参见上面的链接),我使用的是 google.maps.geometry.spherical.computeDistanceBetween 方法。

更新:我添加了我自己的 haversine 公式 ( jsfiddle ) 实现,它与 Google Maps API 一致,所以我很确定问题出在 Wolfram Alpha 上。怎么办?输入看起来很明确,输出也是如此......

最佳答案

Google Maps API 给我的距离是 1034 公里。你只是把坐标转换错了。

您的代码:

var home = ['伦敦', new google.maps.LatLng(-0.1167, 51.5)];

伦敦的正确坐标:

var home = ['伦敦', new google.maps.LatLng(51.5, -0.1167)];

这同样适用于您示例中的其他点。希望这对您有所帮助!

关于google-maps-api-3 - 地理距离 : Wolfram Alpha not agreeing with Google Maps API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22601589/

相关文章:

jsf - 如何在 PrimeFaces DataTable 中设置自增列?

pbs - 请求节点的所有处理器

sapui5 - 禁用诊断工具快捷键

version-control - Mercurial : Change root of named

python - 如何在 Django 中订购反向外键?

sql - 如何从 Rails 中的数据库中选择具有 ID 的不同记录?

animation - iOS7 SpriteKit 如何对两个或多个 Sprite 节点 chil

indexing - MariaDB 中的索引键大小限制是多少?

ssis - 如何使用任何命令行、C# 或 T-SQL 导出部署在 "Integration Ser

sympy - 在 sympy 中简化自由基