问题标签 [overpass-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
openstreetmap - 如何从某个国家的 OpenStreetMap 中获取积分?
我正在尝试获取我国所有学校的列表,经过几次尝试后,我编写了以下查询,该查询在http://overpass-turbo.eu上没有错误:
我曾经geocodeBbox
选择意大利的所有学校,因为geocodeId
和geocodeArea
(请参阅文档)给我以下错误:
无论如何,问题是查询甚至选择了不在意大利的学校(例如,有一所来自克罗地亚的学校)。
那么,如何准确地从某个国家获得积分呢?
ios - 如何处理 ODbl 使用此 URL 时:http://www.overpass-api.de/api/interpreter
本文档中包含的数据来自 www.openstreetmap.org。数据在 ODbL 下提供。
错误:编码错误:您的输入仅包含空格。
javascript - 如何使用 jQuery 的 Overpass API 获取 OSM 数据?
我有以下代码用于从 OSM 请求地图数据:
当我在 Overpass Turbo 上测试请求时,它运行没有任何问题,但是在 JavaScript 中执行此请求时,我总是收到错误:
我提出请求的方式一定有问题,但我无法弄清楚它可能有什么问题。
如何通过 JavaScript 获取柏林所有学校的职位?
我也尝试过使用$.getJSON()
,但这对我也不起作用。
javascript - OpenLayers 3 动态矢量图层,带 bbox 策略,不带 jQuery
我正在尝试使用 JavaScript 和 OpenLayers 3 创建一个简单的地图,只要地图的边界框发生变化,它就应该从 Overpass API 动态加载 OpenStreetMap XML 数据。为此,我创建了一个带有矢量图层的地图,这个矢量图层的源是一个矢量源。此源的加载策略设置为 bbox。我创建了一个加载器函数,每当边界框发生变化时都会调用它。但是,我现在无法弄清楚如何实际加载数据并将其添加到地图中。
基本上,问题是:我应该把什么放在上面代码中标有问号的地方?到目前为止我发现的示例大多使用 jQuery,我没有在我的项目中使用它,所以我正在寻找不使用 jQuery 的东西。我知道 OpenLayers 3 可以在没有 jQuery 的情况下从 Overpass API 加载数据,但是,我发现(并复制)的唯一示例使用固定加载策略在开始时加载所有数据一次,而不是在边界框更改时动态加载。
openstreetmap - 查询高速公路及对应节点的立交桥接口
有人可以这么好心给我一些提示吗?我完全没有把所有简单的立交桥例子放在一起来得到我需要的东西:
- 关系内部:http ://www.openstreetmap.org/relation/2618040
- 我想获得“高速公路”是“高速公路,干线,主要,高速公路链接,......”的所有方式
- 这些方式所指的所有节点。
- 从我想保留标签名称、高速公路和单程的方式
- 我想要没有任何额外数据的节点。像这样:
<node id="122317" lat="53.5282633" lon="10.0232716"/>
openstreetmap - 立交API方式坐标
我正在尝试查询 OSM Overpass API 以查找边界框中的任何便利设施。我的程序中的实际查询将是通用的,但在我的测试中我注意到我无法检索任何方式的坐标(纬度,经度)。这是我的脚本:
我需要使用方法,因为没有它们我会丢失大量数据。不幸的是,尽管我添加了元数据而不是正常输出,但它们不包含任何坐标数据。这在此处得到了回答,overpass-api 方式查询包括大约一年前的坐标,但该解决方案不再有效。这是一个错误吗?还是我做错了什么?我也尝试过 center、out geom 和 out skel 都没有成功。我正在以 xml 格式输出数据。
回答,我不小心在最后的递归线上离开了。谢谢蒂尔。
javascript - 获取当前道路限速
我正在尝试开发一个 Javascript 程序来获取当前道路的当前速度限制。我曾尝试使用 Overpass API,但它只返回一个空的 XML 文件:
我还没有在我的代码中实现这个,在 Firefox 上测试它。
为什么 XML 文件是空的,还有其他免费的在线资源可用于获取坐标处的道路限速x
吗y
?
注意:如果它支持英国的速度限制,我会更喜欢
openstreetmap - 使立交桥输出不完整的方式
这就是我使用 Overpass API 获取数据的方式:
不幸的是,我也得到了边界框之外的节点,因为立交桥完成了方式。我可以关闭该行为,以便我的结果集只包含边界框内的节点吗?
overpass-api - overpass-api:键上的正则表达式
根据http://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL 查询可以在值和键上使用正则表达式。虽然我在值上使用正则表达式没有问题,但我的键有问题。
上面引用的 wiki 上的示例说(以及其他示例):
因此,这是在键和值上使用正则表达式的示例。
我感兴趣的是name
关键。具体是name:en
关键。按名称搜索有几个问题。并非所有名称都是英文的,对于那些名称不是英文的节点/方式/关系,不能保证会有一个name:en
带有英文名称的标签。
一般来说,没有办法提前知道名称是英文还是有name:en
标签。如果您只要求name
or name:en
,您将面临找不到命中的风险。(当然,同时搜索两者也不能保证成功。)
我有一个我知道name
失败但name:en
成功的案例。那是我的测试用例。我可以使用以下方法查询 overpass-api.de/api/interpreter:
在立交桥上看到它
,它工作正常(通过 找不到“duma” name
,但用 找到name:en
),但我发现它冗长且有些重复。
我想使用涉及name
andname:en
标记的正则表达式,但是服务器不理解查询或者我只是使用了不正确的正则表达式。
使用 wiki 中显示的示例:node[~"^addr:.*$"~"^Foo$"]
我尝试过:
和其他几个。我什至模仿了这个例子,[~"^name:.*"~"duma",i]
只是为了看看是否会返回任何东西。
overpass-api.de 能识别键上的正则表达式还是我只是把正则表达式弄错了?我没有从 overpass-api.de 得到错误,只是 bbox 的坐标和一个空结果。对格式错误的查询做出反应通常非常严格。提前致谢。
openstreetmap - 使用 osm overpass 查询的运行时错误
我按照 http://wiki.openstreetmap.org/wiki/Overpass_API/install中的描述安装了立交桥
我克隆了数据库。
当我运行一个简单的查询时,我收到以下错误:
你知道我该如何解决这个问题吗?