我想找到一定半径内的所有高速公路成员节点。如果不使用交集,我看不到如何做到这一点,但是,这不在 API 中。例如我有这个:
[out:json];
way(around:25, 50.61193,-4.68711)["highway"];>->.a;
(node(around:25, 50.61193,-4.68711) - .a);
out;
结果集.a
包含我想要的节点,但也包含半径之外的节点 - 如果路径很长,可能会很大。正如上面的完整查询所返回的,我可以找到我不需要的半径内的所有节点。现在我总是可以执行第二个around
查询,并在 Overpass 之外对两个结果集进行交集。或者我可以做另一个不同的事情:
[out:json];
way(around:25, 50.61193,-4.68711)["highway"];>->.a;
(node(around:25, 50.61193,-4.68711) - .a)->.b;
(node(around:25, 50.61193,-4.68711) - .b);
out;
这给出了我想要的结果,但可以简化吗?我确定我在这里遗漏了一些东西。