我正在尝试从 Overpass API 获取与 tourism=museum 或 historical=memorial 匹配的 POI。 我尝试了不同的查询,但找不到正确的解决方案,我得到的响应是空的。
这里不是工作查询
area["name"="Bursa"];
(node["tourism"="museum"](area););
(node["historic"="memorial"](area););
out center;
area["name"="Bursa"];
(node["tourism"="museum"]|["historic"="memorial"](area););
out center;
我在 OverpassTurbo 上尝试了这些查询
谢谢,艾尔辛。
最佳答案
在同一区域(也只是一个集合)上执行多个查询时,您必须使用命名集合。否则第二次查询将根据第一次查询的结果执行。
area["name"="Bursa"]->.a;
(
node["tourism"="museum"](area.a);
node["historic"="memorial"](area.a);
);
out center;
另请注意,您只是在查询 nodes ,因此您的查询不会找到任何添加为 way 的博物馆或纪念馆。或 relation .以下查询也将包括那些:
area["name"="Bursa"]->.a;
(
nwr["tourism"="museum"](area.a);
nwr["historic"="memorial"](area.a);
);
out center;
关于openstreetmap - 如何在 Overpass QL 上获取与具有特定值的多个标签匹配的节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59070799/