overpass turbo now with MapCSS support
ایہہ 15؍April 2013ء English وچ «tyr_asd» لیکھ چھپیا گیا سی۔ ایہہ 17؍April 2013ء تے پہلا نواں کرنoverpass turbo (overpass-turbo.eu) – “the” graphical user interface for Overpass API – just got a nice new feature: Now, you can use MapCSS to style the results of your Overpass queries.
MapCSS
MapCSS is a CSS-like language for map stylesheets. In overpass turbo, those stylesheets can be attached to a query by using a special curly-bracket “mustache” notation:
<osm-script>
... your overpass query here ...
</osm-script>
{{style:
... your mapcss stylesheet here ...
}}
MapCSS support is still somewhat limited (no text labels, no casings for lines, no layers - more information) but you can already achieve quite pleasant results: See (and try) the examples below.
Supported styling-properties include:
- lines: color, width, opacity and dash-arrays
- areas: fill-color, fill-opacity and casings
- points: icons or symbols (circle)
Examples
Development
Next, I’d like to make MapCSS also available for the “interactive map” export. This would allow to easily create pretty nice interactive embeddable maps.
Then, apart from implementing missing MapCSS features (such as text-labels and line-casings), I think about letting the user customize the following things with MapCSS, too:
- the content of the popups (and whether or not to show popups at all)
- background tiles and overlays (currently MapCSS allows to set a background color only - but why stop there?)
- more dynamic properties that are only relevant for interactive maps (:hover?)
Most of the MapCSS parsing code was written by Richard Fairhurst for an early version of the iD-editor, but abandoned and now resurrected for this project. I think, once this feature is stable, I could provide a vanilla-javascript version of this mapcss implementation as an independent ready-to-use library (“jsmapcss”).
Discussion
ایہہ 15؍April 2013ء 15:46 تے «Richard» ٹپݨی کیتی گئی سی۔
That’s crazily good - very impressed.
ایہہ 15؍April 2013ء 16:09 تے «Tom Chance» ٹپݨی کیتی گئی سی۔
This is great, thanks!
ایہہ 15؍April 2013ء 20:10 تے «ingalls» ٹپݨی کیتی گئی سی۔
Wow, I’ve been playing around with it and can see it being very useful!! Really great job
ایہہ 16؍April 2013ء 08:59 تے «Tom Chance» ٹپݨی کیتی گئی سی۔
Quick question - is it possible to render features several times dependent on different tags?
For example I was hoping this would result in big fat green lines with thin black ones overlaid on top, but it just rendered the black lines without the green underneath:
way[sidewalk=both] { width:8; color: green; } way[highway=residential] { color:black; width:2; opacity:1; }
ایہہ 16؍April 2013ء 09:15 تے «tyr_asd» ٹپݨی کیتی گئی سی۔
@Tom: No, multiple layers are not supported yet. For this I’ll have to rewrite some of the data-rendering code, so it won’t be available very soon, I’m afraid.
ایہہ 16؍April 2013ء 14:06 تے «Tom Chance» ٹپݨی کیتی گئی سی۔
No problem, thanks for your work so far.
ایہہ 29؍April 2013ء 23:00 تے «mikelmaron» ٹپݨی کیتی گئی سی۔
awesome. hey, when can we get a simple link from osm.org export tab to overpass turbo?
ایہہ 30؍April 2013ء 11:06 تے «tyr_asd» ٹپݨی کیتی گئی سی۔
@mikelmaron: Idk, could that be useful? I thought more about augmenting the “browse data” view with some overpass turbo features…
ایہہ 30؍March 2014ء 17:36 تے «jotzt» ٹپݨی کیتی گئی سی۔
Is there a way to use the MapCSS-“metric()” function with overpass turbo?
ایہہ 30؍March 2014ء 18:25 تے «tyr_asd» ٹپݨی کیتی گئی سی۔
@jotzt: no, I’m afraid, that’s not yet implemented.
ایہہ 16؍December 2016ء 20:00 تے «Robot8A» ٹپݨی کیتی گئی سی۔
Is there any way to not draw placeholders without clicking the option in Overpass settings? I mean, is there any command or parameter to do it automatically?
ایہہ 16؍December 2016ء 20:51 تے «tyr_asd» ٹپݨی کیتی گئی سی۔
@Robot8A: Unfortunately, that’s also one more thing on my to-to list.