Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

POI layer #106

Closed
nrenner opened this issue Mar 16, 2018 · 9 comments
Closed

POI layer #106

nrenner opened this issue Mar 16, 2018 · 9 comments

Comments

@nrenner
Copy link
Owner

nrenner commented Mar 16, 2018

Requests to show Points Of Interest (POI) on the map for tour planning:

It would be nice to have a general Overpass API POI layer with some UI to select/filter for specific POIs/categories. Not aware of any plugin for the UI part though.

Maybe utilizing tag hierarchies, icons and translations for selection and popup content from POI apps or editor presets?

Overpass layers

POI apps

Router with POIs examples

@hugobqd
Copy link

hugobqd commented Aug 31, 2018

When I prepare a mountain bike ride with brouter-web, I always look for drinking water on my way with overpass turbo. It would be awesome to have it and other requests into brouter-web

This are my five request :
[man_made=water_tap]
[amenity=drinking_water]
[waterway=water_point]
[amenity=toilets][drinking_water!=no]
[drinking_water=yes]

@stesie
Copy link
Contributor

stesie commented Jun 6, 2020

Hej, just wanted to let you know that I've started working on this.

So far you can enable an extra overpass layer + either enter a custom overpass query (updated on textarea blur) or choose from the (yet little) template list. The marker popup definitely needs more content, ... and generally early feedback is welcome :-)

Currently the build fails on the branch since gulp-uglify stumples over let variables used in overpass-layer. As a first time contributor to the project I'm still wondering which language level this project is actually targeting. So this might also need some work.

Here's the branch --> https://github.com/stesie/brouter-web/tree/add-overpass-layer

@nrenner
Copy link
Owner Author

nrenner commented Jun 6, 2020

Great, thanks for the announcement, looking forward to it!

I will see if I can have a look at your branch, but got a bit of a backlog right now.

We're still not using ES6 yet, see #249 and discussion in #250. Already was planning to have another look at our user agents and to decide if we should either just drop IE11 and other legacy browser support or simply use standalone Babel with the full polyfill package as an intermediate step to using a bundler.

@nrenner
Copy link
Owner Author

nrenner commented Jun 6, 2020

Some thoughts that came to mind:

  • just saw that plepe/overpass-layer seems to be GPL licensed, which would be incompatible with our MIT license
  • before you start formatting OSM tags for popup output (sanitizing, links, address formatting, translation, images, ...): don't know if those tools already support that or if there is a library, but we should do some research or borrow from some license-compatible POI maps
  • a nice addition might be not only to query the viewport bbox, but alternatively offering to query POIs along the route with Overpass API around feature that can also take a list of lat/lon pairs.

@stesie
Copy link
Contributor

stesie commented Jun 6, 2020

Ouch, ... I haven't checked the license but just followed the list in the initial post and noticed that plepe/overpass-layer looks better maintained. Both other options have their last commit in 2018 and there also are no better maintained forks.

So thanks for your fast response to keep me from going further that route :)

Towards popup formatting my first idea was to just list the key/value pairs of the node/area and maybe go fancier over time. I just had a brief look into the leaflet-overpass-layer alternative, which BTW does just that :)

I like the idea with the around feature, I'll have a closer look into the aforementioned alternative and whether it's possible to do so. But looks promising so far. I'll also have a look if it'd be feasible to have a "execute query" button instead of querying implicitly (which is likely to cause unneeded/unwanted overpass api queries)

@bagage
Copy link
Collaborator

bagage commented Jun 6, 2020

Regarding the license issue, it might be worth asking about it on @plepe project - maybe it can be changed to some compatible MIT license instead? I think using a maintained library is the best choice, so maybe we should just double check if we cannot work with it at all before dropping it?

@nrenner
Copy link
Owner Author

nrenner commented Jun 8, 2020

Regarding the license issue, it might be worth asking about it on @plepe project - maybe it can be changed to some compatible MIT license instead?

Done in overpass-layer#1.

@nrenner
Copy link
Owner Author

nrenner commented Jun 8, 2020

Ouch, ... I haven't checked the license but just followed the list in the initial post

Sorry, my bad, I should have checked before listing them.

I also think that plepe/overpass-layer is the most advanced and probably the only one that takes Overpass rate limiting into account, e.g. by query delays and explicitly handling 429 responses.

I'll also have a look if it'd be feasible to have a "execute query" button instead of querying implicitly (which is likely to cause unneeded/unwanted overpass api queries)

Sounds like a good idea to me.

@plepe
Copy link

plepe commented Jun 11, 2020

I also think that it's rather advanced (actually overpass-frontend) with caching, splitting of queries, retries, arbitrary geojson boundary for queries, .... You can even load a .osm file and run your overpass queries on this.

There's a drawback though, it can handle only rather basic queries, as it parses the query to load results from the cache. No sets or distance. But it should be okay for most cases.

@nrenner nrenner closed this as completed Mar 24, 2021
@nrenner nrenner added this to the 0.16.0 milestone Mar 25, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants