diff --git a/culture-media.yaml b/culture-media.yaml index bffbb72..a31785c 100644 --- a/culture-media.yaml +++ b/culture-media.yaml @@ -9,40 +9,47 @@ query: ) feature: pre: | - {% set color = 'red' %} - {% set str = 'No image, wikimedia_commons or wikidata' %} + {% set cat = 'no' %} + {% set str = null %} {% if tags.wikidata %} - {% set color = 'blue' %} - {% set str = 'has wikidata tag' %} + {% set cat = 'wikidata' %} {% set wikidata = tags.wikidata|wikidataEntity %} {% if wikidata and wikidata.claims.P18|length == 0 %} - {% set color = '#007fff' %} - {% set str = 'has wikidata tag, but wikidata object does not have an image' %} + {% set cat = 'wikidata_no_image' %} {% endif %} {% if wikidata.claims.P31[0].mainsnak.datavalue.value.id in ['Q5'] %} - {% set color = 'magenta' %} - {% set str = "wikidata points to a human, should most likely be 'subject:wikidata'" %} + {% set cat = 'wikidata_human' %} {% endif %} {% elseif tags.wikipedia %} - {% set color = '#af00ff' %} - {% set str = 'wikipedia tag found without corresponding wikidata tag' %} + {% set cat = 'wikipedia_no_wikidata' %} {% elseif tags.wikimedia_commons or tags.image %} - {% set color = 'cyan' %} + {% set cat = 'has_image' %} {% set str = tags.wikimedia_commons ? 'has wikimedia_commons tag' : 'has image tag' %} {% endif %} + {% set def = const.categories[cat] %} + + exclude: | + {% if filter.category == 'wikidata_no_image' %} + {{ (not wikidata) or (wikidata.claims.P18|length != 0) }} + {% elseif filter.category == 'no_image_or_wikidata_no_image' %} + {{ (tags.wikidata and not wikidata) or (wikidata.claims.P18|length != 0) }} + {% elseif filter.category == 'wikidata_human' %} + {{ wikidata.claims.P31[0].mainsnak.datavalue.value.id not in ['Q5'] }} + {% endif %} + body: | - {{ str }} + {{ str|default(def.text) }} style: color: | - {{ color }} + {{ def.color }} description: | {% if tags.historic and tags.historic != 'yes' %} @@ -54,11 +61,13 @@ feature: {{ tagTransList('tourism', tags.tourism) }} {% elseif tags.amenity %} {{ tagTrans('amenity', tags.amenity) }} + {% elseif tags.building %} + {{ tags.building == 'yes' ? keyTrans('building') : tagTrans('building', tags.building) }} {% elseif tags.heritage %} {{ keyTrans('heritage') }} {% endif %} - markerSymbol: "{{ markerPointer({ fillColor: color })|raw }}" - listMarkerSymbol: "{{ markerCircle({ fillColor: color })|raw }}" + markerSymbol: "{{ markerPointer({ fillColor: def.color })|raw }}" + listMarkerSymbol: "{{ markerCircle({ fillColor: def.color })|raw }}" markerSign: | {% set icon = '' %} @@ -85,44 +94,28 @@ filter: {% endfor %} op: "has" + category: + name: "{{ trans('category') }}" + show_default: "true" + type: "select" + values: | + + + + + + + info: | + {% for k, def in const.categories %} - - - - - - - - - - - - - - - - - - - - - + + {% endfor %}
- {{ markerCircle({ fillColor: 'red' })|raw }} - No image, wikimedia_commons or wikidata
- {{ markerCircle({ fillColor: 'magenta' })|raw }} - wikidata tag points to a human, should most likely be 'subject:wikidata'
- {{ markerCircle({ fillColor: '#af00ff' })|raw }} + {{ markerCircle({ fillColor: def.color })|raw }} wikipedia tag found without corresponding wikidata tag
- {{ markerCircle({ fillColor: 'cyan' })|raw }} - image or wikimedia_commons tag but no wikidata
- {{ markerCircle({ fillColor: '#007fff' })|raw }} - has wikidata tag, but wikidata object does not have an image
- {{ markerCircle({ fillColor: 'blue' })|raw }} - has wikidata tag{{ def.text }}
This category lists artwork, memorials, historic and heritage protected objects. These should have an image or wikimedia_commons tag, or (even better) a wikidata tag pointing to the object's entry.
@@ -155,3 +148,22 @@ const: other: query: 'nwr[historic][historic!~"^(memorial|monument|wayside_cross|wayside_shrine|building)$"]' trans: 'other' + categories: + 'no': + color: red + text: No image, wikimedia_commons or wikidata + has_image: + color: cyan + text: image or wikimedia_commons tag but no wikidata + wikidata_no_image: + color: '#007fff' + text: has wikidata tag, but wikidata object does not have an image + wikidata: + color: blue + text: has wikidata tag + wikidata_human: + color: magenta + text: wikidata tag points to a human, should most likely be 'subject:wikidata' + wikipedia_no_wikidata: + color: '#af00ff' + text: wikipedia tag found without corresponding wikidata tag diff --git a/footways.yaml b/footways.yaml index 4b3ca59..098b62a 100644 --- a/footways.yaml +++ b/footways.yaml @@ -6,7 +6,7 @@ query: way[footway]; way["area:highway"~"^(footway|pedestrian|steps|path|platform|sidewalk)$"]; relation["area:highway"~"^(footway|pedestrian|steps|path|platform|sidewalk)$"]; - way[sidewalk~"^(yes|both|left|right|no|none)$"]; + way[sidewalk~"^(yes|both|left|right|no|separate|none)$"]; way["sidewalk:left"~"(yes|no|separate)$"]; way["sidewalk:right"~"(yes|no|separate)$"]; way["sidewalk:both"~"(yes|no|separate)$"]; @@ -17,6 +17,7 @@ feature: pre: | {% set sides = ['default'] %} {% set sidewalk_left = null %}{% set sidewalk_right = null %} + {% set cycleway = false %} {% set category = tags.highway %} {% if attribute(tags, 'sidewalk:both') == 'yes' or tags.sidewalk in ['yes', 'both', 'left', 'both', 'right'] or tags.footway == 'sidewalk' %} @@ -27,6 +28,16 @@ feature: {% set sides = sides|merge(['main']) %} {% endif %} + {% if tags.highway in ['cycleway'] %} + {% set category = 'footway' %} + {% set cycleway = true %} + {% set sides = sides|merge(['cycleway']) %} + {% endif %} + {% if tags.highway in ['path'] and tags.bicycle in ['yes', 'designated'] %} + {% set cycleway = true %} + {% set sides = sides|merge(['cycleway']) %} + {% endif %} + {% if attribute(tags, 'area:highway') in ['footway'] %} {% set sides = sides|merge(['main']) %} {% set category = attribute(tags, 'area:highway') %} @@ -37,15 +48,6 @@ feature: {% set category = 'platform' %} {% endif %} - {% set foot = false %} - {% if tags.highway not in ['pedestrian', 'footway'] and tags.foot in ['yes', 'designated'] %} - {% set foot = tags.foot %} - {% set sides = sides|merge(['foot']) %} - {% endif %} - {% if tags.highway == 'path' and tags.bicycle in ['yes', 'designated'] %} - {% set category = 'cycleway' %} - {% endif %} - {% if tags.footway == 'crossing' %} {% set category = 'crossing' %} {% endif %} @@ -56,6 +58,12 @@ feature: {% set sides = sides|merge(['leftr', 'rightr']) %} {% endif %} + {% if tags.sidewalk == 'separate' %} + {% set sidewalk_left = 'separate' %} + {% set sidewalk_right = 'separate' %} + {% set sides = sides|merge(['leftr', 'rightr']) %} + {% endif %} + {% if attribute(tags, 'sidewalk:both') %} {% set sidewalk_left = attribute(tags, 'sidewalk:both') %} {% set sides = sides|merge(['leftr', 'rightr']) %} @@ -143,17 +151,17 @@ feature: {{ keyTrans('wheelchair') }}: {{ tagTrans('wheelchair', attribute(tags, 'sidewalk:left:wheelchair')|default(attribute(tags, 'sidewalk:both:wheelchair'))) }} {% endif %} - {% if attribute(tags, 'sidewalk:left:surface')|default(attribute(tags, 'sidewalk:both:surface')) %}
  • + {% if attribute(tags, 'sidewalk:left:surface')|default(attribute(tags, 'sidewalk:both:surface'))|default(attribute(tags, 'sidewalk:surface')) %}
  • {{ keyTrans('surface') }}: - {{ tagTrans('surface', attribute(tags, 'sidewalk:left:surface')|default(attribute(tags, 'sidewalk:both:surface'))) }} + {{ tagTrans('surface', attribute(tags, 'sidewalk:left:surface')|default(attribute(tags, 'sidewalk:both:surface'))|default(attribute(tags, 'sidewalk:surface'))) }}
  • {% endif %} {% if attribute(tags, 'sidewalk:left:tactile_paving') %}
  • {{ keyTrans('tactile_paving') }}: {{ tagTrans('tactile_paving', attribute(tags, 'sidewalk:left:tactile_paving')|default(attribute(tags, 'sidewalk:both:tactile_paving'))) }}
  • {% endif %} - {% if attribute(tags, 'sidewalk:left:smoothness')|default(attribute(tags, 'sidewalk:both:smoothness')) %}
  • + {% if attribute(tags, 'sidewalk:left:smoothness')|default(attribute(tags, 'sidewalk:both:smoothness'))|default(attribute(tags, 'sidewalk:smoothness')) %}
  • {{ keyTrans('smoothness') }}: - {{ tagTrans('smoothness', attribute(tags, 'sidewalk:left:smoothness')|default(attribute(tags, 'sidewalk:both:smoothness'))) }} + {{ tagTrans('smoothness', attribute(tags, 'sidewalk:left:smoothness')|default(attribute(tags, 'sidewalk:both:smoothness'))|default(attribute(tags, 'sidewalk:smoothness'))) }}
  • {% endif %} {% set v = attribute(tags, 'sidewalk:left:incline')|default(attribute(tags, 'sidewalk:both:incline'))|default(tags.incline) %} {% if v %}
  • @@ -174,17 +182,17 @@ feature: {{ keyTrans('wheelchair') }}: {{ tagTrans('wheelchair', attribute(tags, 'sidewalk:right:wheelchair')|default(attribute(tags, 'sidewalk:both:wheelchair'))) }}
  • {% endif %} - {% if attribute(tags, 'sidewalk:right:surface')|default(attribute(tags, 'sidewalk:both:surface')) %}
  • + {% if attribute(tags, 'sidewalk:right:surface')|default(attribute(tags, 'sidewalk:both:surface'))|default(attribute(tags, 'sidewalk:surface')) %}
  • {{ keyTrans('surface') }}: - {{ tagTrans('surface', attribute(tags, 'sidewalk:right:surface')|default(attribute(tags, 'sidewalk:both:surface'))) }} + {{ tagTrans('surface', attribute(tags, 'sidewalk:right:surface')|default(attribute(tags, 'sidewalk:both:surface'))|default(attribute(tags, 'sidewalk:surface'))) }}
  • {% endif %} {% if attribute(tags, 'sidewalk:right:tactile_paving') %}
  • {{ keyTrans('tactile_paving') }}: {{ tagTrans('tactile_paving', attribute(tags, 'sidewalk:right:tactile_paving')|default(attribute(tags, 'sidewalk:both:tactile_paving'))) }}
  • {% endif %} - {% if attribute(tags, 'sidewalk:right:smoothness')|default(attribute(tags, 'sidewalk:both:smoothness')) %}
  • + {% if attribute(tags, 'sidewalk:right:smoothness')|default(attribute(tags, 'sidewalk:both:smoothness'))|default(attribute(tags, 'sidewalk:smoothness')) %}
  • {{ keyTrans('smoothness') }}: - {{ tagTrans('smoothness', attribute(tags, 'sidewalk:right:smoothness')|default(attribute(tags, 'sidewalk:both:smoothness'))) }} + {{ tagTrans('smoothness', attribute(tags, 'sidewalk:right:smoothness')|default(attribute(tags, 'sidewalk:both:smoothness'))|default(attribute(tags, 'sidewalk:smoothness'))) }}
  • {% endif %} {% set v = attribute(tags, 'sidewalk:right:incline')|default(attribute(tags, 'sidewalk:both:incline'))|default(tags.incline) %} {% if i %}
  • @@ -204,20 +212,22 @@ feature: {{ markerLine({ 'styles': sides|join(','), 'style:main': { - width: foot and tags.segregated == 'yes' ? 2 : const.categories[category].width|default(3), + width: cycleway and tags.segregated == 'yes' ? 2 : const.categories[category].width|default(3), color: const.categories[category].color, - dashArray: tags.highway == 'steps' or (foot and tags.segregated != 'yes') ? '3,3' : '', - lineCap: tags.highway == 'steps' or (foot and tags.segregated != 'yes') ? 'butt' : 'round', - offset: foot and tags.segregated == 'yes' ? 1 : 0 + dashArray: tags.highway == 'steps' ? '3,3' : + cycleway and tags.segregated != 'yes' ? '8,8' : + '', + lineCap: tags.highway == 'steps' or (cycleway and tags.segregated != 'yes') ? 'butt' : 'round', + offset: cycleway and tags.segregated == 'yes' ? 1 : 0 }, - 'style:foot': { + 'style:cycleway': { fill: false, - width: foot and tags.segregated == 'yes' ? 2 : 3, - color: const.categories.footway.color, - dashArray: foot and tags.segregated != 'yes' ? '3,3' : '', - dashOffset: 3, - lineCap: foot and tags.segregated != 'yes' ? 'butt' : 'round', - offset: foot and tags.segregated == 'yes' ? -1 : 0 + width: cycleway and tags.segregated == 'yes' ? 2 : 3, + color: const.categories.cycleway.color, + dashArray: cycleway and tags.segregated != 'yes' ? '8,8' : '', + dashOffset: 8, + lineCap: cycleway and tags.segregated != 'yes' ? 'butt' : 'round', + offset: cycleway and tags.segregated == 'yes' ? -1 : 0 }, 'style:left': { width: 3, @@ -266,40 +276,37 @@ feature: 0 {% elseif tags.area == 'yes' %} 1 - {% elseif foot and tags.segregated == 'yes' %} - 2 + {% elseif cycleway and tags.segregated == 'yes' %} + 3 {% else %} {{ const.categories[category].width|default(3) }} {% endif %} color: | {{ const.categories[category].color }} dashArray: | - {% if tags.highway == 'steps' or (foot and tags.segregated != 'yes') %} + {% if tags.highway == 'steps' %} 3,3 + {% elseif cycleway and tags.segregated != 'yes' %} + 8,8 {% endif %} lineCap: | - {% if tags.highway == 'steps' or (foot and tags.segregated != 'yes') %}butt{% else %}round{% endif %} + {% if tags.highway == 'steps' or (cycleway and tags.segregated != 'yes') %}butt{% else %}round{% endif %} offset: | - {% if foot and tags.segregated == 'yes' %}1{% else %}0{% endif %} - style:foot: + {% if cycleway and tags.segregated == 'yes' %}1.5{% else %}0{% endif %} + style:cycleway: fill: false - width: | - {% if foot and tags.segregated == 'yes' %} - 2 - {% else %} - 3 - {% endif %} + width: 3 color: | - {{ const.categories.footway.color }} + {{ const.categories.cycleway.color }} dashArray: | - {% if foot and tags.segregated != 'yes' %} - 3,3 + {% if cycleway and tags.segregated != 'yes' %} + 8,8 {% endif %} - dashOffset: 3 + dashOffset: 8 lineCap: | - {% if foot and tags.segregated != 'yes' %}butt{% else %}round{% endif %} + {% if cycleway and tags.segregated != 'yes' %}butt{% else %}round{% endif %} offset: | - {% if foot and tags.segregated == 'yes' %}-1{% else %}0{% endif %} + {% if cycleway and tags.segregated == 'yes' %}-1.5{% else %}0{% endif %} style:left: fill: false width: 3 @@ -389,13 +396,13 @@ info: | style: { width: 4, color: const.categories.cycleway.color, - dashArray: '3,3' + dashArray: '8,8' }, 'style:foot': { width: 4, color: const.categories.footway.color, - dashArray: '3,3', - dashOffset: 3 + dashArray: '8,8', + dashOffset: 8 } }) }} {{ tagTrans('highway', 'cycleway segregated=no') }} @@ -404,14 +411,14 @@ info: | {{ markerLine({ styles: 'default,foot', style: { - width: 2, + width: 3, color: const.categories.cycleway.color, - offset: -1 + offset: -1.5 }, 'style:foot': { - width: 2, + width: 3, color: const.categories.footway.color, - offset: 1 + offset: 1.5 } }) }} {{ tagTrans('highway', 'cycleway segregated=yes') }} @@ -438,6 +445,149 @@ info: | {% endfor %} +filter: + access: + name: '{{ keyTrans("access") }}' + type: select + placeholder: '<{{ trans("any value") }}>' + valueName: '{{ tagTrans("access", value) }}' + values: + 'yes': {} + private: {} + permissive: {} + customers: {} + discouraged: {} + '!': + name: <{{ trans('empty value') }}> + query: nwr[!access] + weight: -3 + '?': + name: <{{ trans("other") }}> + query: nwr[access]["access"!~"^(public|private|permissive|customers|discouraged|unknown|yes)$"] + weight: -2 + unknown: + name: '<{{ trans("unknown") }}>' + query: nwr["access"="unknown"] + weight: -1 + surface: + name: '{{ keyTrans("surface") }}' + type: select + placeholder: '<{{ trans("any value") }}>' + valueName: '{{ tagTrans("surface", value) }}' + query: | + {% if value == 'all_paved' %} + {% set value = "(paved|asphalt|chipseal|concrete|concrete:lanes|concrete:plates|paving_stones|sett|unhewn_cobblestone|cobblestone|metal|wood|rubber)" %} + {% elseif value == 'all_unpaved' %} + {% set value = "(unpaved|compacted|fine_gravel|gravel|rock|pebblestone|ground|dirt|earth|grass|grass_paver|mud|sand|woodchips|snow|ice|salt|clay)" %} + {% endif %} + + ( + nwr[!sidewalk][!"sidewalk:both"][!"sidewalk:right"][!"sidewalk:left"][surface~"^{{ value }}$"]; + nwr[~"sidewalk(:left|:right|:both|):surface"~"^{{ value }}$"]; + ) + values: + all_paved: + name: "<{{ tagTrans('surface', 'paved') }}>" + weight: -1 + all_unpaved: + name: "<{{ tagTrans('surface', 'unpaved') }}>" + weight: -1 + acrylic: {} + artificial_turf: {} + asphalt: {} + carpet: {} + chipseal: {} + clay: {} + cobblestone: {} + compacted: {} + concrete: {} + concrete:lanes: {} + concrete:plates: {} + dirt: {} + earth: {} + fine_gravel: {} + grass: {} + grass_paver: {} + gravel: {} + ground: {} + ice: {} + metal: {} + metal_grid: {} + mud: {} + paved: {} + paving_stones: {} + pebblestone: {} + rock: {} + rubber: {} + salt: {} + sand: {} + sett: {} + snow: {} + stepping_stones: {} + tartan: {} + unhewn_cobblestone: {} + unpaved: {} + wood: {} + woodchips: {} + '!': + name: <{{ trans('empty value') }}> + query: | + ( + nwr[!sidewalk][!"sidewalk:both"][!"sidewalk:right"][!"sidewalk:left"][!"surface"]; + nwr["sidewalk:left"="yes"][!"sidewalk:left:surface"]; + nwr["sidewalk:right"="yes"][!"sidewalk:right:surface"]; + nwr["sidewalk:both"="yes"][!"sidewalk:both:surface"][!"sidewalk:surface"][!"sidewalk:left:surface"]; + nwr["sidewalk:both"="yes"][!"sidewalk:both:surface"][!"sidewalk:surface"][!"sidewalk:right:surface"]; + nwr["sidewalk"="left"][!"sidewalk:left:surface"]; + nwr["sidewalk"="right"][!"sidewalk:right:surface"]; + nwr["sidewalk"="both"][!"sidewalk:both:surface"][!"sidewalk:surface"][!"sidewalk:left:surface"]; + nwr["sidewalk"="both"][!"sidewalk:both:surface"][!"sidewalk:surface"][!"sidewalk:right:surface"]; + ) + weight: -4 + '?': + name: <{{ trans("other") }}> + query: nwr[surface]["surface"!~"^(acrylic|artificial_turf|asphalt|carpet|chipseal|clay|cobblestone|compacted|concrete|concrete:lanes|concrete:plates|dirt|earth|fine_gravel|grass|grass_paver|gravel|ground|ice|metal|metal_grid|mud|paved|paving_stones|pebblestone|rock|rubber|salt|sand|sett|snow|stepping_stones|tartan|unhewn_cobblestone|unpaved|wood|woodchips)$"] + weight: -3 + unknown: + name: '<{{ trans("unknown") }}>' + weight: -2 + smoothness: + name: '{{ keyTrans("smoothness") }}' + type: select + placeholder: '<{{ trans("any value") }}>' + valueName: '{{ tagTrans("smoothness", value) }}' + query: '(nwr[smoothness="{{ value }}"];nwr[~"sidewalk:(left|right|both):smoothness"~"{{ value }}"];)' + values: + bad: {} + excellent: {} + good: {} + horrible: {} + impassable: {} + intermediate: {} + very_bad: {} + very_horrible: {} + '!': + name: <{{ trans('empty value') }}> + query: | + ( + nwr[!"smoothness"]; + nwr["sidewalk:left"="yes"][!"sidewalk:left:smoothness"]; + nwr["sidewalk:right"="yes"][!"sidewalk:right:smoothness"]; + nwr["sidewalk:both"="yes"][!"sidewalk:both:smoothness"][!"sidewalk:smoothness"][!"sidewalk:left:smoothness"]; + nwr["sidewalk:both"="yes"][!"sidewalk:both:smoothness"][!"sidewalk:smoothness"][!"sidewalk:right:smoothness"]; + nwr["sidewalk"="left"][!"sidewalk:left:smoothness"]; + nwr["sidewalk"="right"][!"sidewalk:right:smoothness"]; + nwr["sidewalk"="both"][!"sidewalk:both:smoothness"][!"sidewalk:smoothness"][!"sidewalk:left:smoothness"]; + nwr["sidewalk"="both"][!"sidewalk:both:smoothness"][!"sidewalk:smoothness"][!"sidewalk:right:smoothness"]; + ) + weight: -3 + '?': + name: <{{ trans("other") }}> + query: nwr[smoothness]["smoothness"!~"^(bad|excellent|good|horrible|impassable|intermediate|very_bad|very_horrible)$"] + weight: -2 + unknown: + name: '<{{ trans("unknown") }}>' + weight: -1 const: categories: sidewalk: diff --git a/kerbs.yaml b/kerbs.yaml index f21b7d7..3c6fd42 100644 --- a/kerbs.yaml +++ b/kerbs.yaml @@ -14,18 +14,18 @@ feature:
  • {{ keyTrans('kerb') }}: {{ tags.kerb ? tagTrans('kerb', tags.kerb) : trans('unknown') }}
  • {{ keyTrans('wheelchair') }}: {{ tags.wheelchair ? tagTrans('wheelchair', tags.wheelchair) : trans('unknown') }}
  • {{ keyTrans('tactile_paving') }}: {{ tags.tactile_paving ? tagTrans('tactile_paving', tags.tactile_paving) : trans('unknown') }}
  • -
  • {{ keyTrans('height') }}: {{ 'height' in tags ? tags.height : trans('unknown') }}
  • +
  • {{ keyTrans('height') }}: {{ tags.height ? tags.height|formatUnit('distance') : trans('unknown') }}
  • markerSymbol: listMarkerSymbol: | {% if type == 'way' %} line {% else %} - {{ markerCircle({ radius: 5, width: 2, fillOpacity: 1, fillColor: const.kerb[kerb], color: const.wheelchair[wheelchair] }) }} + {{ markerCircle({ radius: 5, width: 2, fillOpacity: 1, fillColor: const.kerb[kerb][config.color_scheme|default('color1')], color: 'black' }) }} {% endif %} details: | {% if tags.kerb and tags.kerb != 'yes' %}{{ tagTrans('kerb', tags.kerb) }}{% endif %} - {% if tags.height %}({{ tags.height }}){% endif %} + {% if tags.height %}({{ tags.height|formatUnit('distance') }}){% endif %} styles: | {% if type == 'way' %} default,marker @@ -34,52 +34,83 @@ feature: {% endif %} style: color: | - {{ const.kerb[kerb] }} + {{ const.kerb[kerb][config.color_scheme|default('color1')] }} fill: | {{ type == 'way' ? false : true }} radius: 4 fillOpacity: 1 - width: 2 + width: | + {{ config.thickness|default(2) }} style:marker: color: | - {{ const.kerb[kerb] }} - offset: 2 - width: 2 + {{ const.kerb[kerb][config.color_scheme|default('color1')] }} + offset: | + {{ config.thickness|default(2) }} + width: | + {{ config.thickness|default(2) }} fill: false - dashArray: '2,9' + dashArray: | + {{ config.thickness|default(2) }},{{ config.thickness|default(2) * 4 }} + lineCap: butt style:node: fillColor: | - {{ const.kerb[kerb] }} + {{ const.kerb[kerb][config.color_scheme|default('color1')] }} fill: true radius: 6 fillOpacity: 1 width: 1 color: black - {{ const.wheelchair[wheelchair] }} info: | {{ tagTrans('barrier', 'kerb') }}: - {% for v, color in const.kerb %} + {% for v, def in const.kerb %} {% endfor %}
    - {{ markerLine({ styles: 'default,marker', style: { width: 2, color: color }, 'style:marker': { width: 2, offset: 2, color: color, dashArray: '2,9'} } ) }} - {{ markerCircle({ radius: 4, width: 1, fillOpacity: 1, fillColor: color, color: 'black' }) }} + {{ markerLine({ styles: 'default,marker', style: { width: 2, color: def[config.color_scheme|default('color1')] }, 'style:marker': { width: 2, offset: 2, color: def[config.color_scheme|default('color1')], dashArray: '2,9'} } ) }} + {{ markerCircle({ radius: 4, width: 1, fillOpacity: 1, fillColor: def[config.color_scheme|default('color1')], color: 'black' }) }} {{ v == 'unknown' ? trans('unknown') : tagTrans('kerb', v) }}
    +config: + thickness: + name: "{{ trans('thickness') }}" + type: select + default: 2 + placeholder: false + show_default: true + values: + 1: "{{ trans('thickness:thin') }}" + 2: "{{ trans('thickness:normal') }}" + 3: "{{ trans('thickness:thick') }}" + 5: "{{ trans('thickness:very_thick') }}" + color_scheme: + name: "{{ trans('color_scheme') }}" + type: select + default: color1 + placeholder: false + show_default: true + values: + color1: "1" + color2: "2" const: kerb: - flush: '#00af00' - lowered: '#007f7f' - no: '#000000' - raised: '#af0000' - rolled: '#af7f00' - unknown: '#7f7f7f' - wheelchair: - designated: '#00ff7f' - yes: '#00ff00' - no: '#ff0000' - limited: '#ffff00' - unknown: '#ffffff' + flush: + color1: '#00af00' + color2: '#ff007f' + lowered: + color1: '#007f7f' + color2: '#00ffff' + 'no': + color1: '#000000' + color2: '#ff0000' + raised: + color1: '#af0000' + color2: '#7f00ff' + rolled: + color1: '#af7f00' + color2: '#00af00' + unknown: + color1: '#7f7f7f' + color2: '#0000ff'