From 72d16fd76dfec396194e4f8794f105297607bd73 Mon Sep 17 00:00:00 2001 From: Bryan Housel Date: Wed, 2 Nov 2016 18:12:20 -0400 Subject: [PATCH] Improve traffic calming presets (closes #3218) * Allow traffic calmings on vertex and line geometry where appropriate * Add parallel_direction field to tag forward/backward * Add generic traffic calming preset and type field * Add traffic calming to defaults.json for "vertex" geometry * Add a bunch of types that we didn't have before (island, dip, choker, etc) * Add some search terms --- data/presets.yaml | 41 ++++- data/presets/defaults.json | 1 + data/presets/fields.json | 5 + data/presets/fields/traffic_calming.json | 5 + data/presets/presets.json | 166 +++++++++++++++--- data/presets/presets/traffic_calming.json | 20 +++ .../presets/presets/traffic_calming/bump.json | 14 +- .../presets/traffic_calming/chicane.json | 18 ++ .../presets/traffic_calming/choker.json | 17 ++ .../presets/traffic_calming/cushion.json | 20 +++ data/presets/presets/traffic_calming/dip.json | 18 ++ .../presets/presets/traffic_calming/hump.json | 14 +- .../presets/traffic_calming/island.json | 14 ++ .../presets/traffic_calming/rumble_strip.json | 16 +- .../presets/traffic_calming/table.json | 13 +- data/taginfo.json | 23 +++ dist/locales/en.json | 35 +++- 17 files changed, 389 insertions(+), 51 deletions(-) create mode 100644 data/presets/fields/traffic_calming.json create mode 100644 data/presets/presets/traffic_calming.json create mode 100644 data/presets/presets/traffic_calming/chicane.json create mode 100644 data/presets/presets/traffic_calming/choker.json create mode 100644 data/presets/presets/traffic_calming/cushion.json create mode 100644 data/presets/presets/traffic_calming/dip.json create mode 100644 data/presets/presets/traffic_calming/island.json diff --git a/data/presets.yaml b/data/presets.yaml index 658976566..1a6ae5bd2 100644 --- a/data/presets.yaml +++ b/data/presets.yaml @@ -1093,6 +1093,9 @@ en: grade5: 'Soft: soil/sand/grass' # tracktype field placeholder placeholder: 'Solid, Mostly Solid, Soft...' + traffic_calming: + # traffic_calming=* + label: Type traffic_signals: # traffic_signals=* label: Type @@ -3883,25 +3886,55 @@ en: # tourism=zoo name: Zoo terms: '' + traffic_calming: + # traffic_calming=* + name: Traffic Calming + # 'terms: bump,hump,slow,speed' + terms: '' traffic_calming/bump: # traffic_calming=bump name: Speed Bump - # 'terms: speed hump' + # 'terms: hump,speed,slow' terms: '' + traffic_calming/chicane: + # traffic_calming=chicane + name: Traffic Chicane + # 'terms: driveway link,speed,slow' + terms: '' + traffic_calming/choker: + # traffic_calming=choker + name: Traffic Choker + # 'terms: speed,slow' + terms: '' + traffic_calming/cushion: + # traffic_calming=cushion + name: Speed Cushion + # 'terms: bump,hump,speed,slow' + terms: '' + traffic_calming/dip: + # traffic_calming=dip + name: Dip + # 'terms: speed,slow' + terms: '' traffic_calming/hump: # traffic_calming=hump name: Speed Hump - # 'terms: speed bump' + # 'terms: bump,speed,slow' terms: '' + traffic_calming/island: + # traffic_calming=island + name: Traffic Island + # 'terms: circle,roundabout,slow' + terms: '' traffic_calming/rumble_strip: # traffic_calming=rumble_strip name: Rumble Strip - # 'terms: sleeper lines,audible lines,growlers' + # 'terms: audible lines,sleeper lines,growlers' terms: '' traffic_calming/table: # 'highway=crossing, traffic_calming=table' name: Raised Pedestrian Crossing - # 'terms: speed table,flat top hump' + # 'terms: flat top,hump,speed,slow' terms: '' type/boundary: # type=boundary diff --git a/data/presets/defaults.json b/data/presets/defaults.json index 066e38a4c..b89dd8214 100644 --- a/data/presets/defaults.json +++ b/data/presets/defaults.json @@ -38,6 +38,7 @@ "railway/level_crossing", "highway/traffic_signals", "highway/turning_circle", + "traffic_calming", "highway/mini_roundabout", "highway/motorway_junction", "vertex" diff --git a/data/presets/fields.json b/data/presets/fields.json index 199ba232f..07b14a6c0 100644 --- a/data/presets/fields.json +++ b/data/presets/fields.json @@ -1471,6 +1471,11 @@ } } }, + "traffic_calming": { + "key": "traffic_calming", + "type": "typeCombo", + "label": "Type" + }, "traffic_signals": { "key": "traffic_signals", "type": "combo", diff --git a/data/presets/fields/traffic_calming.json b/data/presets/fields/traffic_calming.json new file mode 100644 index 000000000..d1f491b53 --- /dev/null +++ b/data/presets/fields/traffic_calming.json @@ -0,0 +1,5 @@ +{ + "key": "traffic_calming", + "type": "typeCombo", + "label": "Type" +} diff --git a/data/presets/presets.json b/data/presets/presets.json index 253fbe0fd..154a123b5 100644 --- a/data/presets/presets.json +++ b/data/presets/presets.json @@ -10946,48 +10946,167 @@ }, "name": "Zoo" }, - "traffic_calming/bump": { + "traffic_calming": { "fields": [ - "surface" + "traffic_calming", + "parallel_direction" ], "geometry": [ - "vertex" + "vertex", + "line" + ], + "tags": { + "traffic_calming": "*" + }, + "terms": [ + "bump", + "hump", + "slow", + "speed" + ], + "name": "Traffic Calming" + }, + "traffic_calming/bump": { + "fields": [ + "surface", + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "hump", + "speed", + "slow" ], "tags": { "traffic_calming": "bump" }, - "terms": [ - "speed hump" - ], "name": "Speed Bump" }, + "traffic_calming/chicane": { + "fields": [ + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "driveway link", + "speed", + "slow" + ], + "tags": { + "traffic_calming": "chicane" + }, + "name": "Traffic Chicane" + }, + "traffic_calming/choker": { + "fields": [ + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "speed", + "slow" + ], + "tags": { + "traffic_calming": "choker" + }, + "name": "Traffic Choker" + }, + "traffic_calming/cushion": { + "fields": [ + "surface", + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "bump", + "hump", + "speed", + "slow" + ], + "tags": { + "traffic_calming": "cushion" + }, + "name": "Speed Cushion" + }, + "traffic_calming/dip": { + "fields": [ + "surface", + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "speed", + "slow" + ], + "tags": { + "traffic_calming": "dip" + }, + "name": "Dip" + }, "traffic_calming/hump": { "fields": [ - "surface" + "surface", + "parallel_direction" ], "geometry": [ - "vertex" + "vertex", + "line" + ], + "terms": [ + "bump", + "speed", + "slow" ], "tags": { "traffic_calming": "hump" }, - "terms": [ - "speed bump" - ], "name": "Speed Hump" }, - "traffic_calming/rumble_strip": { + "traffic_calming/island": { "geometry": [ "vertex" ], + "terms": [ + "circle", + "roundabout", + "slow" + ], + "tags": { + "traffic_calming": "island" + }, + "name": "Traffic Island" + }, + "traffic_calming/rumble_strip": { + "fields": [ + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "audible lines", + "sleeper lines", + "growlers" + ], "tags": { "traffic_calming": "rumble_strip" }, - "terms": [ - "sleeper lines", - "audible lines", - "growlers" - ], "name": "Rumble Strip" }, "traffic_calming/table": { @@ -10995,16 +11114,19 @@ "surface" ], "geometry": [ - "vertex" + "vertex", + "line" + ], + "terms": [ + "flat top", + "hump", + "speed", + "slow" ], "tags": { "highway": "crossing", "traffic_calming": "table" }, - "terms": [ - "speed table", - "flat top hump" - ], "name": "Raised Pedestrian Crossing" }, "type/multipolygon": { diff --git a/data/presets/presets/traffic_calming.json b/data/presets/presets/traffic_calming.json new file mode 100644 index 000000000..92c297cdf --- /dev/null +++ b/data/presets/presets/traffic_calming.json @@ -0,0 +1,20 @@ +{ + "fields": [ + "traffic_calming", + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "tags": { + "traffic_calming": "*" + }, + "terms": [ + "bump", + "hump", + "slow", + "speed" + ], + "name": "Traffic Calming" +} diff --git a/data/presets/presets/traffic_calming/bump.json b/data/presets/presets/traffic_calming/bump.json index 29c9b543c..6a0c6ce02 100644 --- a/data/presets/presets/traffic_calming/bump.json +++ b/data/presets/presets/traffic_calming/bump.json @@ -1,15 +1,19 @@ { "fields": [ - "surface" + "surface", + "parallel_direction" ], "geometry": [ - "vertex" + "vertex", + "line" + ], + "terms": [ + "hump", + "speed", + "slow" ], "tags": { "traffic_calming": "bump" }, - "terms": [ - "speed hump" - ], "name": "Speed Bump" } diff --git a/data/presets/presets/traffic_calming/chicane.json b/data/presets/presets/traffic_calming/chicane.json new file mode 100644 index 000000000..52d99d68d --- /dev/null +++ b/data/presets/presets/traffic_calming/chicane.json @@ -0,0 +1,18 @@ +{ + "fields": [ + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "driveway link", + "speed", + "slow" + ], + "tags": { + "traffic_calming": "chicane" + }, + "name": "Traffic Chicane" +} diff --git a/data/presets/presets/traffic_calming/choker.json b/data/presets/presets/traffic_calming/choker.json new file mode 100644 index 000000000..0e6143a14 --- /dev/null +++ b/data/presets/presets/traffic_calming/choker.json @@ -0,0 +1,17 @@ +{ + "fields": [ + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "speed", + "slow" + ], + "tags": { + "traffic_calming": "choker" + }, + "name": "Traffic Choker" +} diff --git a/data/presets/presets/traffic_calming/cushion.json b/data/presets/presets/traffic_calming/cushion.json new file mode 100644 index 000000000..009c8be56 --- /dev/null +++ b/data/presets/presets/traffic_calming/cushion.json @@ -0,0 +1,20 @@ +{ + "fields": [ + "surface", + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "bump", + "hump", + "speed", + "slow" + ], + "tags": { + "traffic_calming": "cushion" + }, + "name": "Speed Cushion" +} diff --git a/data/presets/presets/traffic_calming/dip.json b/data/presets/presets/traffic_calming/dip.json new file mode 100644 index 000000000..2d29db32e --- /dev/null +++ b/data/presets/presets/traffic_calming/dip.json @@ -0,0 +1,18 @@ +{ + "fields": [ + "surface", + "parallel_direction" + ], + "geometry": [ + "vertex", + "line" + ], + "terms": [ + "speed", + "slow" + ], + "tags": { + "traffic_calming": "dip" + }, + "name": "Dip" +} diff --git a/data/presets/presets/traffic_calming/hump.json b/data/presets/presets/traffic_calming/hump.json index 1de51afdb..a03258048 100644 --- a/data/presets/presets/traffic_calming/hump.json +++ b/data/presets/presets/traffic_calming/hump.json @@ -1,15 +1,19 @@ { "fields": [ - "surface" + "surface", + "parallel_direction" ], "geometry": [ - "vertex" + "vertex", + "line" + ], + "terms": [ + "bump", + "speed", + "slow" ], "tags": { "traffic_calming": "hump" }, - "terms": [ - "speed bump" - ], "name": "Speed Hump" } diff --git a/data/presets/presets/traffic_calming/island.json b/data/presets/presets/traffic_calming/island.json new file mode 100644 index 000000000..bc337e00a --- /dev/null +++ b/data/presets/presets/traffic_calming/island.json @@ -0,0 +1,14 @@ +{ + "geometry": [ + "vertex" + ], + "terms": [ + "circle", + "roundabout", + "slow" + ], + "tags": { + "traffic_calming": "island" + }, + "name": "Traffic Island" +} diff --git a/data/presets/presets/traffic_calming/rumble_strip.json b/data/presets/presets/traffic_calming/rumble_strip.json index 8e9d8a66d..c9c2eaf00 100644 --- a/data/presets/presets/traffic_calming/rumble_strip.json +++ b/data/presets/presets/traffic_calming/rumble_strip.json @@ -1,14 +1,18 @@ { + "fields": [ + "parallel_direction" + ], "geometry": [ - "vertex" + "vertex", + "line" + ], + "terms": [ + "audible lines", + "sleeper lines", + "growlers" ], "tags": { "traffic_calming": "rumble_strip" }, - "terms": [ - "sleeper lines", - "audible lines", - "growlers" - ], "name": "Rumble Strip" } diff --git a/data/presets/presets/traffic_calming/table.json b/data/presets/presets/traffic_calming/table.json index b9fedbc40..a722d8aa1 100644 --- a/data/presets/presets/traffic_calming/table.json +++ b/data/presets/presets/traffic_calming/table.json @@ -3,15 +3,18 @@ "surface" ], "geometry": [ - "vertex" + "vertex", + "line" + ], + "terms": [ + "flat top", + "hump", + "speed", + "slow" ], "tags": { "highway":"crossing", "traffic_calming": "table" }, - "terms": [ - "speed table", - "flat top hump" - ], "name": "Raised Pedestrian Crossing" } diff --git a/data/taginfo.json b/data/taginfo.json index 639c6fbe0..0af97dfa4 100644 --- a/data/taginfo.json +++ b/data/taginfo.json @@ -2485,14 +2485,37 @@ "key": "tourism", "value": "zoo" }, + { + "key": "traffic_calming" + }, { "key": "traffic_calming", "value": "bump" }, + { + "key": "traffic_calming", + "value": "chicane" + }, + { + "key": "traffic_calming", + "value": "choker" + }, + { + "key": "traffic_calming", + "value": "cushion" + }, + { + "key": "traffic_calming", + "value": "dip" + }, { "key": "traffic_calming", "value": "hump" }, + { + "key": "traffic_calming", + "value": "island" + }, { "key": "traffic_calming", "value": "rumble_strip" diff --git a/dist/locales/en.json b/dist/locales/en.json index 11bb1fbc9..bdd861383 100644 --- a/dist/locales/en.json +++ b/dist/locales/en.json @@ -1547,6 +1547,9 @@ "grade5": "Soft: soil/sand/grass" } }, + "traffic_calming": { + "label": "Type" + }, "traffic_signals": { "label": "Type" }, @@ -4114,21 +4117,45 @@ "name": "Zoo", "terms": "" }, + "traffic_calming": { + "name": "Traffic Calming", + "terms": "bump,hump,slow,speed" + }, "traffic_calming/bump": { "name": "Speed Bump", - "terms": "speed hump" + "terms": "hump,speed,slow" + }, + "traffic_calming/chicane": { + "name": "Traffic Chicane", + "terms": "driveway link,speed,slow" + }, + "traffic_calming/choker": { + "name": "Traffic Choker", + "terms": "speed,slow" + }, + "traffic_calming/cushion": { + "name": "Speed Cushion", + "terms": "bump,hump,speed,slow" + }, + "traffic_calming/dip": { + "name": "Dip", + "terms": "speed,slow" }, "traffic_calming/hump": { "name": "Speed Hump", - "terms": "speed bump" + "terms": "bump,speed,slow" + }, + "traffic_calming/island": { + "name": "Traffic Island", + "terms": "circle,roundabout,slow" }, "traffic_calming/rumble_strip": { "name": "Rumble Strip", - "terms": "sleeper lines,audible lines,growlers" + "terms": "audible lines,sleeper lines,growlers" }, "traffic_calming/table": { "name": "Raised Pedestrian Crossing", - "terms": "speed table,flat top hump" + "terms": "flat top,hump,speed,slow" }, "type/multipolygon": { "name": "Multipolygon",