| Version 8 (modified by , 5 years ago) ( diff ) |
|---|
Useful for highlighting pedestrian affairs when mapping. Visualizes the sidewalk, sidewalk:left, and sidewalk:right tags of highways, and renders various highway=footway types in different patterns. Ways that do not permit pedestrian use are made translucent, making it easy to see that a tag like foot=no or foot=use_sidepath is applied.
This style probably misses lots of useful functionality. Please let me know if you want to modify this style (if I don't reply within a reasonable span of time, go ahead and edit this style yourself).
meta { title: "Sidewalks and footways (with knobs on)"; description: "Useful for pedestrian affairs. Visualizes the sidewalk, sidewalk:left, and sidewalk:right attribute of highways, and renders various highway=footway types in different patterns. Ways that do not permit pedestrian use are made translucent."; link: "https://wiki.openstreetmap.org/wiki/Key:sidewalk"; icon: "silly-icon.svg"; author: "Jeroen Hoek"; version: "1.16_2023-12-17"; min-josm-version: "17428"; } /* This style is a fork of https://josm.openstreetmap.de/wiki/Styles/Sidewalks Because this style introduces few more features than the above I have forked it for now. If the author of the original is willing the two may be combined in the future. */ meta[lang=de] { title: "Geh- und Fußwege (mit allen Schikanen)"; description: "Praktisch für Fußgängerangelegenheiten. Visualisiert die Tags sidewalk, sidewalk:left und sidewalk:right und zeichnet die verschiedenen Arten von highway=footway mit unterschiedlichen Mustern. Straßen die für Fußgänger nicht zugänglich sind werden durchscheinend gemacht." } meta[lang=nl] { title: "Stoepen en voetpaden (met alles dr'op en dr'an)"; description: "Handig voor voetgangerszaken. Visualiseert de sidewalk, sidewalk:left, en sidewalk:right tags, en tekent de verschillende highway=footway soorten met verschillende patronen. Wegen waar voetgangers niet mogen komen worden doorschijnend gemaakt."; } way[sidewalk]::sidewalks_right, way["sidewalk:right"]::sidewalks_right { width: 3; dashes: 5, 1; offset: min(eval(0 - 10 - (prop("width") * 0.5) - (prop("width", "default") * 0.5)), -10); } way[sidewalk]::sidewalks_left, way["sidewalk:left"]::sidewalks_left { width: 3; dashes: 5, 1; offset: max(eval(10 + (prop("width") * 0.5) + (prop("width", "default") * 0.5)), 10); } way[sidewalk=right][!"sidewalk:right"]::sidewalks_right, way[sidewalk=both][!"sidewalk:right"]::sidewalks_right { set sidewalk-yes; } way[sidewalk=left][!"sidewalk:left"]::sidewalks_left, way[sidewalk=both][!"sidewalk:left"]::sidewalks_left { set sidewalk-yes; } /* left, no, and none mean no sidewalk on the right if sidewalk:right is not set. */ way[sidewalk=~/^(left)|(no(ne)?)$/][!"sidewalk:right"]::sidewalks_right { set sidewalk-no; } /* right, no, and none mean no sidewalk on the left if sidewalk:left is not set. */ way[sidewalk=~/^(right)|(no(ne)?)$/][!"sidewalk:left"]::sidewalks_left { set sidewalk-no; } way[sidewalk=separate][!"sidewalk:right"]::sidewalks_right { set sidewalk-separate; } way[sidewalk=separate][!"sidewalk:left"]::sidewalks_left { set sidewalk-separate; } /* More specific values can override the general sidewalk=* tag. */ way["sidewalk:left"=yes]::sidewalks_left { set sidewalk-yes; } way["sidewalk:right"=yes]::sidewalks_right { set sidewalk-yes; } way["sidewalk:left"=~/^no(ne)?$/]::sidewalks_left { set sidewalk-no; } way["sidewalk:right"=~/^no(ne)?$/]::sidewalks_right { set sidewalk-no; } way["sidewalk:left"=separate]::sidewalks_left { set sidewalk-separate; } way["sidewalk:right"=separate]::sidewalks_right { set sidewalk-separate; } /* Styling. */ way.sidewalk-yes::sidewalks_left { color: #00cc00; } way.sidewalk-yes::sidewalks_right { color: #00cc00; } way.sidewalk-separate::sidewalks_left { color: #00aa00; dashes: 5, 10; opacity: 0.7; } way.sidewalk-separate::sidewalks_right { color: #00aa00; dashes: 5, 10; opacity: 0.7; } way.sidewalk-no::sidewalks_left { color: #ff0000; opacity: 0.5; } way.sidewalk-no::sidewalks_right { color: #ff0000; opacity: 0.5; } /* Styling of other related highways. */ way[highway=footway] { color: #00cc00; width: 1; } way[highway=footway][footway=sidewalk] { width: 3; } way[highway=footway][footway=crossing] { width: 3; color: #00aa80; dashes: 3, 6; } way|z19-[highway=footway][footway=crossing] { width: 2; color: #00aa80; dashes: none; } way|z19-[highway=footway][footway=crossing]::sidewalks_left { offset: 11.5; width: 2; color: #00aa80; dashes: 5; } way|z19-[highway=footway][footway=crossing]::sidewalks_right { offset: -11.5; width: 2; color: #00aa80; dashes: 5; } way[highway=footway][footway=traffic_island] { width: 3; color: #00aa80; } way|z19-[highway=footway][footway=island], way|z19-[highway=footway][footway=traffic_island] { width: 2; color: #00aa80; } way|z19-[highway=footway][footway=island]::sidewalks_left, way|z19-[highway=footway][footway=traffic_island]::sidewalks_left { offset: 10; width: 5; color: #00aa80; dashes: 5; } way|z19-[highway=footway][footway=island]::sidewalks_right, way|z19-[highway=footway][footway=traffic_island]::sidewalks_right { offset: -10; width: 5; color: #00aa80; dashes: 5; } way[highway=footway][footway=link] { width: 3; color: #69aa00; dashes: 2, 4; } way[highway=footway][footway=alley], way[highway=footway][footway=access_aisle], way[highway=footway][footway=access] { width: 2; dashes: 5, 10; } /* Make ways with no pedestrian access translucent. This makes it easier to focus on the ways that do permit pedestrians, and shows whether or not pedestrian access is allowed at a glance. */ way[foot=yes], way[foot=permissive], way[foot=designated] { /* This overrides access=* below. */ set foot-has-access; } way[access=no]!.foot-has-access, way[access=private]!.foot-has-access, way[foot=use_sidepath], way[foot=private], way[foot=no] { width: max(prop("width"), 1); opacity: 0.3; } way[access=no]!.foot-has-access::core_access, way[access=private]!.foot-has-access::core_access, way[foot=use_sidepath]::core_access, way[foot=private]::core_access, way[foot=no]::core_access { /* ::core_access is the layer used for access restrictions in JOSM default. */ opacity: 0.3; }
Styles_SidewalksAndFootways-style.mapcss, Styles_SidewalksAndFootways.zip
Attachments (13)
-
icon.svg
(10.7 KB
) - added by 5 years ago.
Icon
-
sample.png
(370.6 KB
) - added by 5 years ago.
Sample (NOZIP)
-
silly-icon.svg
(10.7 KB
) - added by 5 years ago.
Icon
-
walking-routes-highlighting.png
(418.7 KB
) - added by 5 years ago.
Sample of walking route highlighting (NOZIP)
-
kerb-yes.svg
(729 bytes
) - added by 4 years ago.
kerb=yes
-
kerb-rolled.svg
(582 bytes
) - added by 4 years ago.
kerb=rolled
-
kerb-raised.svg
(568 bytes
) - added by 4 years ago.
kerb=raised
-
kerb-other.svg
(954 bytes
) - added by 4 years ago.
kerb=?
-
kerb-no.svg
(461 bytes
) - added by 4 years ago.
kerb=no
-
kerb-lowered.svg
(553 bytes
) - added by 4 years ago.
kerb=lowered
-
kerb-flush.svg
(611 bytes
) - added by 4 years ago.
kerb=flush
-
Screenshot from 2022-03-22 21-57-49.png
(779.5 KB
) - added by 4 years ago.
Sample of kerb=* (NOZIP)
-
tactile_paving.png
(95.1 KB
) - added by 3 years ago.
Tactile paving (NOZIP)
Download all attachments as: .zip



