From b7dce5f8ea635a56cbb66c0f3a74f523179318b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20B=C3=B6sch-Plepelits?= Date: Tue, 14 Jan 2020 17:09:19 +0100 Subject: [PATCH] Lanes: mark parallel/diagonal/perpendicular parking --- lanes.json | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 53 insertions(+), 4 deletions(-) diff --git a/lanes.json b/lanes.json index 641dca0..16a4fd0 100644 --- a/lanes.json +++ b/lanes.json @@ -42,7 +42,7 @@ ], "markerSymbol": null, "listMarkerSymbol": "line", - "styles": "{% if sidewalk_left %}sidewalk_left,{% endif %}{% if cycletrack_left %}cycletrack_left,{% endif %}{% if parking_left.width %}parking_left,{% endif %}{% if cyclelane_left %}cyclelane_left,{% endif %}{% if lanes == 1 %}lane1{% else %}{% for i in 1..lanes - 1 %}lane{{ i }},mark{{ i }},{% endfor %}lane{{ lanes }}{% endif %}{% if cyclelane_right %},cyclelane_right{% endif %}{% if parking_right.width %},parking_right{% endif %}{% if cycletrack_right %},cycletrack_right{% endif %}{% if sidewalk_right %},sidewalk_right{% endif %}", + "styles": "{% if sidewalk_left %}sidewalk_left,{% endif %}{% if cycletrack_left %}cycletrack_left,{% endif %}{% if parking_left.width %}parking_left,{% if parking_left.dashDistance %}parking_left_dash,{% if parking_left_type == 'diagonal' %}parking_left_dash_diag,{% endif %}{% endif %}{% endif %}{% if cyclelane_left %}cyclelane_left,{% endif %}{% if lanes == 1 %}lane1{% else %}{% for i in 1..lanes - 1 %}lane{{ i }},mark{{ i }},{% endfor %}lane{{ lanes }}{% endif %}{% if cyclelane_right %},cyclelane_right{% endif %}{% if parking_right.width %},parking_right{% if parking_right.dashDistance %},parking_right_dash{% if parking_right_type == 'diagonal' %},parking_right_dash_diag{% endif %}{% endif %}{% endif %}{% if cycletrack_right %},cycletrack_right{% endif %}{% if sidewalk_right %},sidewalk_right{% endif %}", "style": { "width": "{{ width }}", "pane": "casing", @@ -60,6 +60,21 @@ "offset": "{{ lanes_width / -2 - cyclelane_left - parking_left.width / 2 }}m", "pane": "casing" }, + "style:parking_left_dash": { + "width": "{{ parking_left.width / (parking_left_type == 'diagonal' ? 2 : 1) }}m", + "color": "{{ parking_left.dashColor }}", + "offset": "{{ lanes_width / -2 - cyclelane_left - parking_left.width / 2 - (parking_left_type == 'diagonal' ? parking_left.width / 4 : 0) }}m", + "lineCap": "butt", + "dashArray": "1,{{ parking_left.dashDistance / map.metersPerPixel }}" + }, + "style:parking_left_dash_diag": { + "width": "{{ parking_left.width / 2 }}m", + "color": "{{ parking_left.dashColor }}", + "offset": "{{ lanes_width / -2 - cyclelane_left - parking_left.width / 4 }}m", + "lineCap": "butt", + "dashArray": "1,{{ parking_left.dashDistance / map.metersPerPixel }}", + "dashOffset": "{{ 0.5 / map.metersPerPixel }}" + }, "style:cyclelane_left": { "width": "2m", "color": "#af3f3f", @@ -90,6 +105,21 @@ "offset": "{{ lanes_width / 2 + cyclelane_right + parking_right.width / 2 }}m", "pane": "casing" }, + "style:parking_right_dash": { + "width": "{{ parking_right.width / (parking_right_type == 'diagonal' ? 2 : 1) }}m", + "color": "{{ parking_right.dashColor }}", + "offset": "{{ lanes_width / 2 + cyclelane_right + parking_right.width / 2 + (parking_right_type == 'diagonal' ? parking_right.width / 4 : 0) }}m", + "lineCap": "butt", + "dashArray": "1,{{ parking_right.dashDistance / map.metersPerPixel }}" + }, + "style:parking_right_dash_diag": { + "width": "{{ parking_right.width / 2 }}m", + "color": "{{ parking_right.dashColor }}", + "offset": "{{ lanes_width / 2 + cyclelane_right + parking_right.width / 4 }}m", + "lineCap": "butt", + "dashArray": "1,{{ parking_right.dashDistance / map.metersPerPixel }}", + "dashOffset": "{{ 0.5 / map.metersPerPixel }}" + }, "style:sidewalk_right": { "width": "2m", "color": "#4f4fbf", @@ -250,6 +280,18 @@ " {{ keyTrans('parking:lane') }}", " ", " ", + " {{ markerLine({ 'styles':'lane,mark', 'style:lane': { 'width': 5, 'color': 'orange' }, 'style:mark': { 'width': 5, 'color': const.parking.parallel.dashColor, 'dashArray': '1,10' } })|raw }}", + " {{ keyTrans('parking:lane') }}: {{ tagTrans('parking:lane', 'parallel') }}", + " ", + " ", + " {{ markerLine({ 'styles':'lane,mark1,mark2', 'style:lane': { 'width': 5, 'color': 'orange' }, 'style:mark1': { 'width': 2.5, 'color': const.parking.diagonal.dashColor, 'dashArray': '1,7', 'offset': 1.25 }, 'style:mark2': { 'width': 2.5, 'color': const.parking.diagonal.dashColor, 'dashArray': '1,7', 'dashOffset': '2', 'offset': -1.25 } })|raw }}", + " {{ keyTrans('parking:lane') }}: {{ tagTrans('parking:lane', 'diagonal') }}", + " ", + " ", + " {{ markerLine({ 'styles':'lane,mark', 'style:lane': { 'width': 5, 'color': 'orange' }, 'style:mark': { 'width': 5, 'color': const.parking.perpendicular.dashColor, 'dashArray': '1,6' } })|raw }}", + " {{ keyTrans('parking:lane') }}: {{ tagTrans('parking:lane', 'perpendicular') }}", + " ", + " ", " {{ markerLine({ 'width': 5, 'color': '#af3f3f' })|raw }}", " {{ tagTrans('cycleway', 'lane') }}", " ", @@ -267,15 +309,22 @@ "parking": { "parallel": { "width": "2", - "color": "orange" + "color": "orange", + "dashColor": "blue", + "dashDistance": "4" }, "diagonal": { "width": "2.5", - "color": "orange" + "color": "orange", + "dashColor": "magenta", + "dashDistance": "3", + "dashType": "diagonal" }, "perpendicular": { "width": "3", - "color": "orange" + "color": "orange", + "dashColor": "red", + "dashDistance": "2.5" }, "no_parking": { "width": "0.5",