1

I'm working on a game (http://igotchareverse.com/) where you build buildings along real world roads. Currently investigating a feature where a player who controls the most buildings along a street gets points based on the streets length.

The problem i'm having is that streets as humans understand them do not exist as data in OSM. The best way to get a street is to traverse the ways with the same names that are connected by nodes, taking some wild cards like roundabouts into account.

The main question is, can i get an entire street via OverpassAPI with a single query using one of it's ways osm_id or similar value? A street in this case is a series of ways with the same name connected by nodes.

Things that need to be considered are that many ways have the same name where we work, Sweden. Almost every major city has a Kungsgatan for example (Kings Street), so it's not simply a matter of getting a list of all the ways with the same name and calling it a street, they need to be connected with nodes.

Another issue is that there is to my knowledge any other reference or value that binds these ways together.

I can without a problem build function in my server that achieves this using multiple queries, but that seems not performance efficient and also i'd like to avoid making my own endpoints and changes to Overpass, if possible. Performance is also the reason i won't be making multiple calls like that from the client which will be running on a mobile device.

1 Answer 1

0

At this time, there's only a GitHub issue and a respective pull request available to support this feature. Unfortunately, it hasn't been merged yet into mainline.

Please refer to that GitHub issue for details, as well as lots of examples and screenshots.

Update: Feature is available since 0.7.55: https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL#The_block_statement_complete

2
  • That is awesome! Thanks for the reply, i will investigate.
    – Cousken
    Jan 19, 2016 at 14:09
  • The issue was closed in 2017.
    – handle
    Sep 29, 2020 at 11:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.