facebook / Rapid

The OpenStreetMap editor driven by open data, AI, and supercharged features
https://rapideditor.org
ISC License
513 stars 92 forks source link

Feature filtering #449

Open bhousel opened 2 years ago

bhousel commented 2 years ago

The old feature classification code was removed for the v2 prototype, but we should put something back in that is like that or better.

When I wrote that code originally, it was mostly designed to very quickly cull objects from the scene because SVG could not draw them all. Users will still want to manage the complexity of the scene (e.g. hide landuse) but we need this now more for usability, not render performance.

tordans commented 2 years ago

A general +1. And maybe now, that performance is not the issue anymore, the feature could be more about disabling features (grayed on, unclickable) than actually hiding them. I just wrote a bit more about this in the other issue. At least for me, the usecase was mostly less about performance, but more about a way to focus my editing and getting rid of stuff that I would only break by accident, like borders, underground stuff, … – However, I find myself toggling filters because I need the objects for context.

bhousel commented 2 years ago

Yes, I'd love to be able to build something new now that performance is less of a concern.

One thing I always wished we could have included before was an ability to let people filter features at different levels - underground, aboveground, or work at different levels.. This was a thing that never made it into iD but did exist in other forks or prototypes.

JOSM also has a pretty advanced filtering capability that lets you filter by tag or regex. So there are lots of good examples to draw inspiration from..

tsmock commented 2 years ago

I don't know if you want to reuse the JOSM syntax, but simonpoole/Woazboat did some documenting here: https://github.com/simonpoole/JosmFilterDoc .