如何获得所有OSM方式和节点标记的舒适性,以及使用立交桥API的方式节点?
问题描述:
我试图让所有的方式和节点的'舒适性'键,它与工会好,但我也需要组成一种方式的节点,并且递归标记不按预期工作:如何获得所有OSM方式和节点标记的舒适性,以及使用立交桥API的方式节点?
<osm-script>
<union>
<query type="way">
<has-kv k="amenity" regv="."/>
<bbox-query s="%s" w="%s" n="%s" e="%s"/>
</query>
<query type="node">
<has-kv k="amenity" regv="."/>
<bbox-query s="%s" w="%s" n="%s" e="%s"/>
</query>
</union>
<recurse type="way-node" />
<print/></osm-script>
%s是占位符。谢谢!
答
用你的代码,查询的结果是用递归的结果代替。因此,你应该在你的输出中使用(通常没有标记的)舒适方式的节点,但不是自己的方式。
在联合把这些在一起,但是,意味着这两个方式和它们的节点在输出结束:
<osm-script>
<union>
<query type="node">
<has-kv k="amenity"/>
<bbox-query {{bbox}}/>
</query>
<query type="way">
<has-kv k="amenity"/>
<bbox-query {{bbox}}/>
</query>
<recurse type="way-node" />
</union>
<print/>
</osm-script>
的{{BBOX}}是对于多个参数中的例子占位符。如果您想自己测试修改的查询,请尝试this Overpass Turbo link。
(还请注意,您可以省略全部注册参数。)