From d383e9f541d404636aeefef3cc80f981f3f65e85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20B=C3=B6sch-Plepelits?= Date: Wed, 4 Jan 2023 16:01:13 +0100 Subject: [PATCH] parking_lanes: first attempt --- index.json | 3 ++ parking_lanes.yaml | 96 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+) create mode 100644 parking_lanes.yaml diff --git a/index.json b/index.json index 556f750..3cafb10 100644 --- a/index.json +++ b/index.json @@ -247,6 +247,9 @@ }, { "id": "car_routes" + }, + { + "id": "parking_lanes" } ] } diff --git a/parking_lanes.yaml b/parking_lanes.yaml new file mode 100644 index 0000000..f4e5073 --- /dev/null +++ b/parking_lanes.yaml @@ -0,0 +1,96 @@ +query: + 10: | + (way["parking:left"];way["parking:right"];way["parking:both"];) +feature: + pre: | + {% set leftType = attribute(tags, 'parking:left')|default(attribute(tags, 'parking:both'))|default('unknown') %} + {% set rightType = attribute(tags, 'parking:right')|default(attribute(tags, 'parking:both'))|default('unknown') %} + {% set leftOrientation = attribute(tags, 'parking:left:orientation')|default(attribute(tags, 'parking:both:orientation'))|default('unknown') %} + {% set rightOrientation = attribute(tags, 'parking:right:orientation')|default(attribute(tags, 'parking:both:orientation'))|default('unknown') %} + body: | + lt ={{ leftType }}=
+ lo ={{ leftOrientation }}= + {{ const.orientation[leftOrientation].dashArray }} + +
+ rt ={{ rightType }}=
+ ro ={{ rightOrientation }}=
+ default,leftType,rightType{% if leftType not in ['no', 'separate'] %},leftOrientation{% endif %}{% if rightType not in ['no', 'separate'] %},rightOrientation{% endif %} + markerSymbol: '' + description: | + Left: {{ leftType }}, Right: {{ rightType }} + styles: | + default + ,leftType + ,rightType + {% if leftType not in ['no', 'separate'] %} + ,leftOrientation + {% endif %} + {% if rightType not in ['no', 'separate'] %} + ,rightOrientation + {% endif %} + style: + color: '#7f7f7f' + style:leftType: + color: red + offset: | + {{ 0 - (const.orientation[leftOrientation].width + const.type[leftType].width / 2 + 6) }} + lineCap: butt + width: | + {{ const.type[leftType].width }} + dashArray: | + {{ const.type[leftType].dashArray }} + style:leftOrientation: + color: red + offset: | + {{ 0 - (const.orientation[leftOrientation].width / 2 + 4) }} + lineCap: butt + width: | + {{ const.orientation[leftOrientation].width }} + dashArray: | + {{ const.orientation[leftOrientation].dashArray }} + style:rightType: + color: blue + offset: | + {{ const.orientation[rightOrientation].width + const.type[rightType].width / 2 + 6 }} + lineCap: butt + width: | + {{ const.type[rightType].width }} + dashArray: | + {{ const.type[rightType].dashArray }} + style:rightOrientation: + color: blue + offset: | + {{ const.orientation[rightOrientation].width / 2 + 4 }} + lineCap: butt + width: | + {{ const.orientation[rightOrientation].width }} + dashArray: | + {{ const.orientation[rightOrientation].dashArray }} +const: + type: + 'no': + width: 6 + dashArray: '6,10' + unknown: + width: 3 + dashArray: '1,1' + lane: + width: 2 + dashArray: '' + separate: + width: 0 + dashArray: '' + orientation: + unknown: + width: 6 + dashArray: '10,3' + parallel: + width: 3 + dashArray: '10,3' + diagonal: + width: 6 + dashArray: '5,5' + perpendicular: + width: 10 + dashArray: '3,3'