【问题标题】:Get current road speed limit获取当前道路限速
【发布时间】:2018-03-08 19:19:36
【问题描述】:

我正在尝试开发一个 Javascript 程序来获取当前道路的当前速度限制。我曾尝试使用 Overpass API,但它只返回一个空的 XML 文件:

/interpreter?node(around:10, 40.7127, 74.0059)[maxspeed];out;

我还没有在我的代码中实现这个,在 Firefox 上测试它。

为什么XML文件是空的,还有其他免费的在线资源可以用来获取坐标x,y的道路限速吗?

注意:我希望它支持英国的限速

【问题讨论】:

  • 您能给我们一个您尝试运行的查询的实际示例吗?

标签: javascript openstreetmap overpass-api


【解决方案1】:

您的查询返回空结果的两个原因:

  • 您正在一个非常稀疏的映射区域进行查询
  • 您正在查询 nodes 而不是 ways

试试这个查询:

way
  (around:70, 51.0483, 13.7495)
  [maxspeed];
(._;>;);
out;

请参阅result on overpass turbo

【讨论】:

  • (._;>;); 是做什么的?
  • 它是一个递归。它告诉 Overpass API 包括由查询返回的 ways 引用的所有 nodes。它可以省略,但如果你对你的方式的几何感兴趣,它是必需的。方式本身没有坐标,而是由它们所引用的节点定义。
  • @BetaDecay 如果它解决了您的问题,您介意接受我的回答吗? :)
  • 哦对不起,我忘了:)
  • 第三个原因:开始的 URL 不正确,因为在 data= 之后缺少 interpreter? ... overpass turbo 将通过直接单击 Export -> raw data 为您创建正确的 URL来自 Overpass API
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-21
  • 2011-11-25
  • 2014-02-25
相关资源
最近更新 更多