2015-08-12 5 views
1

Это, как я получаю мои данные с помощью API путепровода:сделать Путепровод выходных неполными способами

[out:xml]; 
way(40,10,35,5)["highway"~"motorway|motorway_link|trunk|trunk_link|primary|primary_link|secondary|secondary_link|tertiary|tertiary_link|residential|service|road|track|unclassified|undefined|unknown|living_street"]; 
(._;>;); 
out; 

К сожалению, я также получаю узлы, которые находятся за пределами ограничительной рамки, потому что путепровод завершает пути. Могу ли я отключить это поведение, чтобы в моем результирующем наборе содержались узлы, которые находятся в ограничивающей рамке?

ответ

3

Вы можете использовать следующий запрос для этой цели:

[bbox:{{bbox}}]; 
way["highway"~"^(motorway|motorway_link|trunk|trunk_link|primary|primary_link|secondary|secondary_link|tertiary|tertiary_link|residential|service|road|track|unclassified|undefined|unknown|living_street)$"]; 
out geom({{bbox}}); 

Обратите внимание, что формат вывода из GEOM будет немного отличаться. Это не проблема для турбонаддува. Однако вы не указали какие-либо сведения о вашем парсере.

+0

Это намного лучше, но при использовании вашего запроса и замене {{bbox}}, например. с "53.3951118,9.7304736,53.7394377,10.3251953" Я все еще получаю узел не внутри ограничивающей рамки (https://www.openstreetmap.org/node/20951253). И в моем результирующем наборе оно отображается как «". – marcus

+2

Да, это предназначено и как определяется «out geom'is». Вы просто получите идентификатор узла, но не детали его lat/lon. Эти «пробелы» необходимы для идентификации недостающих фрагментов вашего пути в ответе, в противном случае будет сложно правильно перестроить геометрию внутри вашего bbox. – mmd

+0

Это имеет смысл. Еще более короткие или раздвоенные способы тоже будут иметь смысл. Но, да, всегда есть веские причины, почему все по-другому. – marcus

 Смежные вопросы

  • Нет связанных вопросов^_^