bbox-query是否返回部分位于边界框中的方式?

时间:2016-10-26 03:31:24

标签: overpass-api

我正在试图弄清楚Overpass-API的 bbox-query 是否应该返回:

  1. 完全被框包围(所有节点都在框内)
  2. 框内至少有一个节点。
  3. 至少有一个片段与盒子相交(即使实际上没有节点在里面)。
  4. 文档建议它应该做#3。 http://wiki.openstreetmap.org/wiki/Overpass_API/Language_Guide#Bounding_box_clauses_.28.22bbox_query.22.2C_.22bounding_box_filter.22.29

      

    不仅找到了一种方法,它不仅在边界框内有一个节点,而且它只是跨越边界框的某个地方。

    但是,在实践中,我发现它基本上只是#1。 这样做的用处不大,因为很难确保你有足够的方法来影响你的边界框。

1 个答案:

答案 0 :(得分:1)

我想我误会了。它似乎确实返回了仅相交的方式,即#3,即使它们在框中没有节点。但我感到很困惑,因为在我的查询中我也得到节点并进行联合。它没有获得节点的方式,因此Overpass-Turbo UI无法呈现方式。通过递归,它也可以获取节点并显示我期望的内容。

我进一步感到困惑,因为我正在查询关系,它发现了许多相交的关系。

例如

<osm-script output="xml" timeout="25"><!-- fixed by auto repair -->
 <!-- gather results -->
 <union>
  <query type="way">
   <bbox-query w="-79.39941" s="43.64019" e="-79.39798" n="43.64120"/>
  </query>
  <query type="node">
   <bbox-query w="-79.39941" s="43.64019" e="-79.39798" n="43.64120"/>
  </query>
 </union>
 <union>
  <item/>
  <recurse type="down"/>
 </union>
 <!-- print results -->
 <print mode="meta" order="quadtile"/>
</osm-script>