From 526542f7ef81d55d7b01a82921f9dedaffd04e0b Mon Sep 17 00:00:00 2001 From: Robin van der Linde Date: Tue, 20 Jul 2021 16:30:08 +0200 Subject: [PATCH 1/4] Cyclestreets options and cycleway=no --- assets/themes/cycle_infra/cycle_infra.json | 78 ++++++++++++++++------ 1 file changed, 57 insertions(+), 21 deletions(-) diff --git a/assets/themes/cycle_infra/cycle_infra.json b/assets/themes/cycle_infra/cycle_infra.json index c74a35338e..3fac8865b5 100644 --- a/assets/themes/cycle_infra/cycle_infra.json +++ b/assets/themes/cycle_infra/cycle_infra.json @@ -101,10 +101,6 @@ "description": {}, "tagRenderings": [ { - "freeform": { - "key": "cycleway", - "addExtraTags": [] - }, "question": { "en": "What kind of cycleway is there?", "nl": "Wat voor fietspad is hier?" @@ -145,18 +141,23 @@ } }, { - "if": "cycleway=", + "if": "cycleway=no", "then": { "en": "There is no cycleway", - "nl": "Er is geen fietspad" + "nl": "Er is geen fietspad aanwezig" }, - "hideInAnswer": true + "hideInAnswer": "cycleway=opposite" + }, + { + "if": "cycleway=no", + "then": { + "en": "There is no cycleway", + "nl": "Er is geen fietspad aanwezig" + }, + "hideInAnswer": "cycleway!=opposite", + "addExtraTags": ["oneway:bicycle=no", "fixme=Changed from cycleway=opposite"] } - ], - "render": { - "en": "Unknown cycleway situation", - "nl": "Onbekende fietspad situatie" - } + ] }, { "question": { @@ -210,9 +211,27 @@ { "if": "cyclestreet=yes", "then": { - "en": "This is a cyclestreet.", + "en": "This is a cyclestreet, and a 30km/h zone.", + "nl": "Dit is een fietstraat, en dus een 30km/h zone" + }, + "addExtraTags": ["overtaking:motor_vehicle=no", "maxspeed=30"], + "hideInAnswer": "_country!=be" + }, + { + "if": "cyclestreet=yes", + "then": { + "en": "This is a cyclestreet", "nl": "Dit is een fietstraat" - } + }, + "hideInAnswer": "_country=be" + }, + { + "if": "cyclestreet=", + "then": { + "en": "This is not a cyclestreet.", + "nl": "Dit is niet een fietstraat" + }, + "addExtraTags": ["overtaking:motor_vehicle="] } ] }, @@ -223,7 +242,7 @@ }, "freeform": { "key": "maxspeed", - "addExtraTags": [] + "type": "nat" }, "condition": { "or": [ @@ -552,8 +571,8 @@ { "if": "cycleway:traffic_sign=BE:D9", "then": { - "en": "Compulsory cycleway '", - "nl": "Verplicht fietspad '" + "en": "Compulsory cycleway ", + "nl": "Verplicht fietspad " }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -563,8 +582,8 @@ { "if": "cycleway:traffic_sign=BE:D10", "then": { - "en": "Compulsory cycleway '", - "nl": "Verplicht fietspad '" + "en": "Compulsory cycleway ", + "nl": "Verplicht fietspad " }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -729,10 +748,27 @@ { "if": "cycleway=", "then": { - "en": "There is no cycleway", - "nl": "Er is geen fietspad" + "en": "There is no cycleway known here", + "nl": "Er is geen fietspad bekend hier" }, "hideInAnswer": true + }, + { + "if": "cycleway=no", + "then": { + "en": "There is no cycleway", + "nl": "Er is geen fietspad aanwezig" + }, + "hideInAnswer": "cycleway=opposite" + }, + { + "if": "cycleway=no", + "then": { + "en": "There is no cycleway", + "nl": "Er is geen fietspad aanwezig" + }, + "hideInAnswer": "cycleway!=opposite", + "addExtraTags": ["oneway:bicycle=no", "fixme=Changed from cycleway=opposite"] } ], "render": { From 192c7568da3b489b69b4cf2ab835340d28789d30 Mon Sep 17 00:00:00 2001 From: Robin van der Linde Date: Tue, 20 Jul 2021 16:52:01 +0200 Subject: [PATCH 2/4] =?UTF-8?q?=F0=9F=92=AC=F0=9F=92=9A=20Updated=20transl?= =?UTF-8?q?ations,=20and=20hopefully=20fixed=20build?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/themes/cycle_infra/cycle_infra.json | 26 +++++++++++++++---- langs/themes/en.json | 28 ++++++++++++++++---- langs/themes/nl.json | 30 +++++++++++++++++----- 3 files changed, 68 insertions(+), 16 deletions(-) diff --git a/assets/themes/cycle_infra/cycle_infra.json b/assets/themes/cycle_infra/cycle_infra.json index 3fac8865b5..94c75cbdad 100644 --- a/assets/themes/cycle_infra/cycle_infra.json +++ b/assets/themes/cycle_infra/cycle_infra.json @@ -155,7 +155,10 @@ "nl": "Er is geen fietspad aanwezig" }, "hideInAnswer": "cycleway!=opposite", - "addExtraTags": ["oneway:bicycle=no", "fixme=Changed from cycleway=opposite"] + "addExtraTags": [ + "oneway:bicycle=no", + "fixme=Changed from cycleway=opposite" + ] } ] }, @@ -214,7 +217,10 @@ "en": "This is a cyclestreet, and a 30km/h zone.", "nl": "Dit is een fietstraat, en dus een 30km/h zone" }, - "addExtraTags": ["overtaking:motor_vehicle=no", "maxspeed=30"], + "addExtraTags": [ + "overtaking:motor_vehicle=no", + "maxspeed=30" + ], "hideInAnswer": "_country!=be" }, { @@ -231,7 +237,9 @@ "en": "This is not a cyclestreet.", "nl": "Dit is niet een fietstraat" }, - "addExtraTags": ["overtaking:motor_vehicle="] + "addExtraTags": [ + "overtaking:motor_vehicle=" + ] } ] }, @@ -602,7 +610,12 @@ "nl": "Hoe breed is de ruimte tussen het fietspad en de weg?" }, "condition": { - "or": ["cycleway=track", "cycleway=lane", "highway=cycleway", "highway=path"] + "or": [ + "cycleway=track", + "cycleway=lane", + "highway=cycleway", + "highway=path" + ] }, "freeform": { "key": "cycleway:buffer", @@ -768,7 +781,10 @@ "nl": "Er is geen fietspad aanwezig" }, "hideInAnswer": "cycleway!=opposite", - "addExtraTags": ["oneway:bicycle=no", "fixme=Changed from cycleway=opposite"] + "addExtraTags": [ + "oneway:bicycle=no", + "fixme=Changed from cycleway=opposite" + ] } ], "render": { diff --git a/langs/themes/en.json b/langs/themes/en.json index 1c260fd200..2cc532c274 100644 --- a/langs/themes/en.json +++ b/langs/themes/en.json @@ -737,9 +737,11 @@ }, "4": { "then": "There is no cycleway" + }, + "5": { + "then": "There is no cycleway" } - }, - "render": "Unknown cycleway situation" + } }, "1": { "question": "Is this street lit?", @@ -762,7 +764,13 @@ "question": "Is this a cyclestreet?", "mappings": { "0": { - "then": "This is a cyclestreet." + "then": "This is a cyclestreet, and a 30km/h zone." + }, + "1": { + "then": "This is a cyclestreet" + }, + "2": { + "then": "This is not a cyclestreet." } } }, @@ -898,12 +906,16 @@ "then": "Compulsory cycleway " }, "1": { - "then": "Compulsory cycleway '" + "then": "Compulsory cycleway " }, "2": { - "then": "Compulsory cycleway '" + "then": "Compulsory cycleway " } } + }, + "10": { + "render": "The buffer besides this cycleway is {cycleway:buffer} m", + "question": "How wide is the gap between the cycleway and the road?" } } }, @@ -933,6 +945,12 @@ "then": "This is a cyclestreet." }, "5": { + "then": "There is no cycleway known here" + }, + "6": { + "then": "There is no cycleway" + }, + "7": { "then": "There is no cycleway" } }, diff --git a/langs/themes/nl.json b/langs/themes/nl.json index f6b0d5956f..70b6a208d0 100644 --- a/langs/themes/nl.json +++ b/langs/themes/nl.json @@ -592,10 +592,12 @@ "then": "Er is een apart getekend fietspad." }, "4": { - "then": "Er is geen fietspad" + "then": "Er is geen fietspad aanwezig" + }, + "5": { + "then": "Er is geen fietspad aanwezig" } - }, - "render": "Onbekende fietspad situatie" + } }, "1": { "question": "Is deze weg verlicht?", @@ -618,7 +620,13 @@ "question": "Is dit een fietsstraat?", "mappings": { "0": { + "then": "Dit is een fietstraat, en dus een 30km/h zone" + }, + "1": { "then": "Dit is een fietstraat" + }, + "2": { + "then": "Dit is niet een fietstraat" } } }, @@ -702,12 +710,16 @@ "then": "Verplicht fietspad " }, "1": { - "then": "Verplicht fietspad '" + "then": "Verplicht fietspad " }, "2": { - "then": "Verplicht fietspad '" + "then": "Verplicht fietspad " } } + }, + "10": { + "render": "De schrikafstand van dit fietspad is {cycleway:buffer} m", + "question": "Hoe breed is de ruimte tussen het fietspad en de weg?" } } }, @@ -737,7 +749,13 @@ "then": "Dit is een fietsstraat." }, "5": { - "then": "Er is geen fietspad" + "then": "Er is geen fietspad bekend hier" + }, + "6": { + "then": "Er is geen fietspad aanwezig" + }, + "7": { + "then": "Er is geen fietspad aanwezig" } }, "render": "Onbekende fietspad situatie" From 0f8d3471dce7a61498dd5018e112c2d0e2469e39 Mon Sep 17 00:00:00 2001 From: Robin van der Linde Date: Thu, 22 Jul 2021 09:43:24 +0200 Subject: [PATCH 3/4] Cyclestreet question fixed for new cycleways --- assets/themes/cycle_infra/cycle_infra.json | 51 +++++++++++++++++++--- langs/themes/en.json | 21 ++++++--- langs/themes/nl.json | 21 ++++++--- 3 files changed, 76 insertions(+), 17 deletions(-) diff --git a/assets/themes/cycle_infra/cycle_infra.json b/assets/themes/cycle_infra/cycle_infra.json index 94c75cbdad..69b0e059d0 100644 --- a/assets/themes/cycle_infra/cycle_infra.json +++ b/assets/themes/cycle_infra/cycle_infra.json @@ -751,13 +751,6 @@ "nl": "Er is een apart getekend fietspad." } }, - { - "if": "cyclestreet=yes", - "then": { - "nl": "Dit is een fietsstraat.", - "en": "This is a cyclestreet." - } - }, { "if": "cycleway=", "then": { @@ -791,6 +784,50 @@ "en": "Unknown cycleway situation", "nl": "Onbekende fietspad situatie" } + }, + { + "question": { + "en": "Is this a cyclestreet?", + "nl": "Is dit een fietsstraat?" + }, + "condition": { + "and": [ + "highway!=cycleway", + "highway!=path" + ] + }, + "mappings": [ + { + "if": "cyclestreet=yes", + "then": { + "en": "This is a cyclestreet, and a 30km/h zone.", + "nl": "Dit is een fietstraat, en dus een 30km/h zone" + }, + "addExtraTags": [ + "overtaking:motor_vehicle=no", + "maxspeed=30" + ], + "hideInAnswer": "_country!=be" + }, + { + "if": "cyclestreet=yes", + "then": { + "en": "This is a cyclestreet", + "nl": "Dit is een fietstraat" + }, + "hideInAnswer": "_country=be" + }, + { + "if": "cyclestreet=", + "then": { + "en": "This is not a cyclestreet.", + "nl": "Dit is niet een fietstraat" + }, + "addExtraTags": [ + "overtaking:motor_vehicle=" + ] + } + ] } ] }, diff --git a/langs/themes/en.json b/langs/themes/en.json index 2cc532c274..367128e6ca 100644 --- a/langs/themes/en.json +++ b/langs/themes/en.json @@ -942,19 +942,30 @@ "then": "There is a seperately drawn cycleway" }, "4": { - "then": "This is a cyclestreet." - }, - "5": { "then": "There is no cycleway known here" }, - "6": { + "5": { "then": "There is no cycleway" }, - "7": { + "6": { "then": "There is no cycleway" } }, "render": "Unknown cycleway situation" + }, + "1": { + "question": "Is this a cyclestreet?", + "mappings": { + "0": { + "then": "This is a cyclestreet, and a 30km/h zone." + }, + "1": { + "then": "This is a cyclestreet" + }, + "2": { + "then": "This is not a cyclestreet." + } + } } } }, diff --git a/langs/themes/nl.json b/langs/themes/nl.json index 70b6a208d0..8f41e1de1a 100644 --- a/langs/themes/nl.json +++ b/langs/themes/nl.json @@ -746,19 +746,30 @@ "then": "Er is een apart getekend fietspad." }, "4": { - "then": "Dit is een fietsstraat." - }, - "5": { "then": "Er is geen fietspad bekend hier" }, - "6": { + "5": { "then": "Er is geen fietspad aanwezig" }, - "7": { + "6": { "then": "Er is geen fietspad aanwezig" } }, "render": "Onbekende fietspad situatie" + }, + "1": { + "question": "Is dit een fietsstraat?", + "mappings": { + "0": { + "then": "Dit is een fietstraat, en dus een 30km/h zone" + }, + "1": { + "then": "Dit is een fietstraat" + }, + "2": { + "then": "Dit is niet een fietstraat" + } + } } } }, From 63708ea568f7ee80d81e96c237167468dccf38ef Mon Sep 17 00:00:00 2001 From: Robin van der Linde Date: Thu, 22 Jul 2021 10:31:44 +0200 Subject: [PATCH 4/4] Seperation and traffic sign --- assets/themes/cycle_infra/cycle_infra.json | 154 ++++++++++++++++++++- langs/themes/en.json | 58 +++++++- langs/themes/nl.json | 58 +++++++- 3 files changed, 259 insertions(+), 11 deletions(-) diff --git a/assets/themes/cycle_infra/cycle_infra.json b/assets/themes/cycle_infra/cycle_infra.json index 69b0e059d0..56b39046a4 100644 --- a/assets/themes/cycle_infra/cycle_infra.json +++ b/assets/themes/cycle_infra/cycle_infra.json @@ -579,8 +579,8 @@ { "if": "cycleway:traffic_sign=BE:D9", "then": { - "en": "Compulsory cycleway ", - "nl": "Verplicht fietspad " + "en": "Segregated foot/cycleway ", + "nl": "Afgescheiden voet-/fietspad " }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -590,13 +590,71 @@ { "if": "cycleway:traffic_sign=BE:D10", "then": { - "en": "Compulsory cycleway ", - "nl": "Verplicht fietspad " + "en": "Unsegregated foot/cycleway ", + "nl": "Gedeeld voet-/fietspad " }, "hideInAnswer": "_country!=be", "addExtraTags": [ "segregated=no" ] + }, + { + "if": "cycleway:traffic_sign=none", + "then": { + "en": "No traffic sign present", + "nl": "Geen verkeersbord aanwezig" + } + } + ] + }, + { + "question": { + "en": "What traffic sign does this cycleway have?", + "nl": "Welk verkeersbord heeft dit fietspad?" + }, + "condition": { + "or": [ + "highway=cycleway", + "highway=path" + ] + }, + "mappings": [ + { + "if": "traffic_sign=BE:D7", + "then": { + "en": "Compulsory cycleway ", + "nl": "Verplicht fietspad " + }, + "hideInAnswer": "_country!=be" + }, + { + "if": "traffic_sign=BE:D9", + "then": { + "en": "Segregated foot/cycleway ", + "nl": "Afgescheiden voet-/fietspad " + }, + "hideInAnswer": "_country!=be", + "addExtraTags": [ + "segregated=yes" + ] + }, + { + "if": "traffic_sign=BE:D10", + "then": { + "en": "Unsegregated foot/cycleway ", + "nl": "Gedeeld voet-/fietspad " + }, + "hideInAnswer": "_country!=be", + "addExtraTags": [ + "segregated=no" + ] + }, + { + "if": "cycleway:traffic_sign=none", + "then": { + "en": "No traffic sign present", + "nl": "Geen verkeersbord aanwezig" + } } ] }, @@ -612,15 +670,97 @@ "condition": { "or": [ "cycleway=track", - "cycleway=lane", - "highway=cycleway", - "highway=path" + "cycleway=lane" ] }, "freeform": { "key": "cycleway:buffer", "type": "pfloat" } + }, + { + "question": { + "en": "How is this cycleway seperated from the road?", + "nl": "Hoe is dit fietspad gescheiden van de weg?" + }, + "condition": { + "or": [ + "cycleway=track", + "cycleway=lane" + ] + }, + "mappings": [ + { + "if": "cycleway:seperation=dashed_line", + "then": { + "en": "This cycleway is seperated by a dashed line", + "nl": "Dit fietspad is gescheiden van de weg met een onderbroken streep" + } + }, + { + "if": "cycleway:seperation=solid_line", + "then": { + "en": "This cycleway is seperated by a solid line", + "nl": "Dit fietspad is gescheiden van de weg met een doorgetrokken streep" + } + }, + { + "if": "cycleway:seperation=parking_lane", + "then": { + "en": "This cycleway is seperated by a parking lane", + "nl": "Dit fietspad is gescheiden van de weg met parkeervakken" + } + }, + { + "if": "cycleway:seperation=kerb", + "then": { + "en": "This cycleway is seperated by a kerb", + "nl": "Dit fietspad is gescheiden van de weg met een stoeprand" + } + } + ] + }, + { + "question": { + "en": "How is this cycleway seperated from the road?", + "nl": "Hoe is dit fietspad gescheiden van de weg?" + }, + "condition": { + "or": [ + "highway=cycleway", + "highway=path" + ] + }, + "mappings": [ + { + "if": "seperation=dashed_line", + "then": { + "en": "This cycleway is seperated by a dashed line", + "nl": "Dit fietspad is gescheiden van de weg met een onderbroken streep" + } + }, + { + "if": "seperation=solid_line", + "then": { + "en": "This cycleway is seperated by a solid line", + "nl": "Dit fietspad is gescheiden van de weg met een doorgetrokken streep" + } + }, + { + "if": "seperation=parking_lane", + "then": { + "en": "This cycleway is seperated by a parking lane", + "nl": "Dit fietspad is gescheiden van de weg met parkeervakken" + } + }, + { + "if": "seperation=kerb", + "then": { + "en": "This cycleway is seperated by a kerb", + "nl": "Dit fietspad is gescheiden van de weg met een stoeprand" + } + } + ] } ], "hideUnderlayingFeaturesMinPercentage": 0, diff --git a/langs/themes/en.json b/langs/themes/en.json index 367128e6ca..f02d48c6e7 100644 --- a/langs/themes/en.json +++ b/langs/themes/en.json @@ -906,16 +906,70 @@ "then": "Compulsory cycleway " }, "1": { - "then": "Compulsory cycleway " + "then": "Segregated foot/cycleway " }, "2": { - "then": "Compulsory cycleway " + "then": "Unsegregated foot/cycleway " + }, + "3": { + "then": "No traffic sign present" } } }, "10": { + "question": "What traffic sign does this cycleway have?", + "mappings": { + "0": { + "then": "Compulsory cycleway " + }, + "1": { + "then": "Segregated foot/cycleway " + }, + "2": { + "then": "Unsegregated foot/cycleway " + }, + "3": { + "then": "No traffic sign present" + } + } + }, + "11": { "render": "The buffer besides this cycleway is {cycleway:buffer} m", "question": "How wide is the gap between the cycleway and the road?" + }, + "12": { + "question": "How is this cycleway seperated from the road?", + "mappings": { + "0": { + "then": "This cycleway is seperated by a dashed line" + }, + "1": { + "then": "This cycleway is seperated by a solid line" + }, + "2": { + "then": "This cycleway is seperated by a parking lane" + }, + "3": { + "then": "This cycleway is seperated by a kerb" + } + } + }, + "13": { + "question": "How is this cycleway seperated from the road?", + "mappings": { + "0": { + "then": "This cycleway is seperated by a dashed line" + }, + "1": { + "then": "This cycleway is seperated by a solid line" + }, + "2": { + "then": "This cycleway is seperated by a parking lane" + }, + "3": { + "then": "This cycleway is seperated by a kerb" + } + } } } }, diff --git a/langs/themes/nl.json b/langs/themes/nl.json index 8f41e1de1a..891cbe8ae3 100644 --- a/langs/themes/nl.json +++ b/langs/themes/nl.json @@ -710,16 +710,70 @@ "then": "Verplicht fietspad " }, "1": { - "then": "Verplicht fietspad " + "then": "Afgescheiden voet-/fietspad " }, "2": { - "then": "Verplicht fietspad " + "then": "Gedeeld voet-/fietspad " + }, + "3": { + "then": "Geen verkeersbord aanwezig" } } }, "10": { + "question": "Welk verkeersbord heeft dit fietspad?", + "mappings": { + "0": { + "then": "Verplicht fietspad " + }, + "1": { + "then": "Afgescheiden voet-/fietspad " + }, + "2": { + "then": "Gedeeld voet-/fietspad " + }, + "3": { + "then": "Geen verkeersbord aanwezig" + } + } + }, + "11": { "render": "De schrikafstand van dit fietspad is {cycleway:buffer} m", "question": "Hoe breed is de ruimte tussen het fietspad en de weg?" + }, + "12": { + "question": "Hoe is dit fietspad gescheiden van de weg?", + "mappings": { + "0": { + "then": "Dit fietspad is gescheiden van de weg met een onderbroken streep" + }, + "1": { + "then": "Dit fietspad is gescheiden van de weg met een doorgetrokken streep" + }, + "2": { + "then": "Dit fietspad is gescheiden van de weg met parkeervakken" + }, + "3": { + "then": "Dit fietspad is gescheiden van de weg met een stoeprand" + } + } + }, + "13": { + "question": "Hoe is dit fietspad gescheiden van de weg?", + "mappings": { + "0": { + "then": "Dit fietspad is gescheiden van de weg met een onderbroken streep" + }, + "1": { + "then": "Dit fietspad is gescheiden van de weg met een doorgetrokken streep" + }, + "2": { + "then": "Dit fietspad is gescheiden van de weg met parkeervakken" + }, + "3": { + "then": "Dit fietspad is gescheiden van de weg met een stoeprand" + } + } } } },