Найти несколько тегов вокруг координат с помощью Overpass API - PullRequest
1 голос
/ 04 апреля 2020

Учитывая этот запрос путепровода https://overpass-turbo.eu/s/Sle, который ищет музеи и галереи, как я могу ввести новый тип тега для поиска в том же месте, например, я хочу также искать node["amenity"~"cafe|bar"] около одной и той же области (500 метров вокруг lat: 500,53.866444 и lon: 10.684738. Все, что я пробовал, либо вызывает ошибку, либо возвращает неполные результаты. Например, следующие работы работают, но возвращают только кафе и бары, но не музеи.

[out:json];
  node["tourism"~"museum|gallery"](around:500,53.866444, 10.684738);
  node["amenity"~"cafe|bar"](around:500,53.866444, 10.684738);
  out center;

1 Ответ

1 голос
/ 06 апреля 2020

Вам необходимо объединить оба набора результатов:

[out:json];
(
  node["tourism"~"museum|gallery"](around:500,53.866444, 10.684738);
  node["amenity"~"cafe|bar"](around:500,53.866444, 10.684738);
);
out center;

См. https://overpass-turbo.eu/s/Ss6.

В качестве альтернативы попробуйте использовать мастер на overpass-turbo, например, с помощью поиск tourism~"museum|gallery" or amenity~"cafe|bar".

Также обратите внимание, что вы просто ищете узлов . Вы пропустите POI, отображенные как путей или отношений (хотя последнее встречается редко). Поэтому добавьте дополнительные запросы для путей и отношений или замените node на nwr (отношение пути узла).

...