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 %}
- {{ 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 }} |
+ {% endfor %}
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 %}
- {{ 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) }} |
{% endfor %}
+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'