From 610159ca430ba4fd29183dbc1eedc37c3d53e3fa Mon Sep 17 00:00:00 2001 From: Robin van der Linde Date: Wed, 12 Oct 2022 21:09:45 +0200 Subject: [PATCH 1/3] Speed camera layer --- assets/layers/speed_camera/license_info.json | 13 ++ assets/layers/speed_camera/speed_camera.json | 120 +++++++++++++++++++ assets/layers/speed_camera/speed_camera.svg | 20 ++++ assets/themes/maxspeed/maxspeed.json | 5 +- 4 files changed, 156 insertions(+), 2 deletions(-) create mode 100644 assets/layers/speed_camera/license_info.json create mode 100644 assets/layers/speed_camera/speed_camera.json create mode 100644 assets/layers/speed_camera/speed_camera.svg diff --git a/assets/layers/speed_camera/license_info.json b/assets/layers/speed_camera/license_info.json new file mode 100644 index 0000000000..6c09b57947 --- /dev/null +++ b/assets/layers/speed_camera/license_info.json @@ -0,0 +1,13 @@ +[ + { + "path": "speed_camera.svg", + "license": "CC0", + "authors": [ + "Earlyswerver", + "OpenClipArt" + ], + "sources": [ + "https://en.wikipedia.org/wiki/File:Earlyswerver_UK_Speed_Camera_Sign.svg" + ] + } +] \ No newline at end of file diff --git a/assets/layers/speed_camera/speed_camera.json b/assets/layers/speed_camera/speed_camera.json new file mode 100644 index 0000000000..33cb0a52a5 --- /dev/null +++ b/assets/layers/speed_camera/speed_camera.json @@ -0,0 +1,120 @@ +{ + "id": "speed_camera", + "name": { + "en": "Speed Camera" + }, + "description": { + "en": "Layer showing speed cameras" + }, + "title": { + "render": { + "en": "Speed Camera" + } + }, + "minzoom": 12, + "source": { + "osmTags": "highway=speed_camera" + }, + "tagRenderings": [ + { + "id": "maxspeed", + "question": { + "en": "What is the maximum speed allowed at this speed camera?" + }, + "freeform": { + "key": "maxspeed", + "type": "pnat", + "placeholder": { + "en": "Maximum speed allowed" + } + }, + "render": { + "en": "The maximum speed allowed is {canonical(maxspeed)}" + } + } + ], + "presets": [ + { + "tags": [ + "highway=speed_camera" + ], + "title": { + "en": "a speed Camera" + }, + "preciseInput": { + "preferredBackground": "photo", + "maxSnapDistance": 10, + "snapToLayer": [ + "maxspeed" + ] + } + } + ], + "mapRendering": [ + { + "icon": "square:white;./assets/layers/speed_camera/speed_camera.svg", + "location": [ + "point", + "centroid" + ] + } + ], + "units": [ + { + "appliesToKey": [ + "maxspeed" + ], + "applicableUnits": [ + { + "#": "km/h is the default for a maxspeed; should be empty string", + "canonicalDenomination": "", + "alternativeDenomination": [ + "km/u", + "kmh", + "kph" + ], + "human": { + "en": "kilometers/hour", + "ca": "quilòmetres/hora", + "es": "kilómetros/hora", + "nl": "kilometers/uur", + "de": "Kilometer/Stunde" + }, + "humanShort": { + "en": "km/h", + "ca": "km/h", + "es": "km/h", + "nl": "km/u", + "de": "km/h" + } + }, + { + "canonicalDenomination": "mph", + "useIfNoUnitGiven": [ + "gb", + "us" + ], + "alternativeDenomination": [ + "m/u", + "mh", + "m/ph" + ], + "human": { + "en": "miles/hour", + "ca": "milles/hora", + "es": "millas/hora", + "nl": "miles/uur", + "de": "Meilen/Stunde" + }, + "humanShort": { + "en": "mph", + "ca": "mph", + "es": "mph", + "nl": "mph", + "de": "mph" + } + } + ] + } + ] +} diff --git a/assets/layers/speed_camera/speed_camera.svg b/assets/layers/speed_camera/speed_camera.svg new file mode 100644 index 0000000000..3d4755a264 --- /dev/null +++ b/assets/layers/speed_camera/speed_camera.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + diff --git a/assets/themes/maxspeed/maxspeed.json b/assets/themes/maxspeed/maxspeed.json index 23114c8fbb..4e8f4546cf 100644 --- a/assets/themes/maxspeed/maxspeed.json +++ b/assets/themes/maxspeed/maxspeed.json @@ -28,6 +28,7 @@ "startZoom": 1, "widenFactor": 0.01, "layers": [ - "maxspeed" + "maxspeed", + "speed_camera" ] -} \ No newline at end of file +} From 8a81ff66e2a726fb7706e4d93cf7461fafab5732 Mon Sep 17 00:00:00 2001 From: Robin van der Linde Date: Sun, 16 Oct 2022 21:03:24 +0200 Subject: [PATCH 2/3] Added speed display layer --- assets/layers/speed_camera/speed_camera.json | 8 +- assets/layers/speed_display/license_info.json | 12 ++ .../layers/speed_display/speed_display.json | 132 ++++++++++++++++++ assets/layers/speed_display/speed_display.svg | 6 + assets/themes/maxspeed/maxspeed.json | 3 +- 5 files changed, 159 insertions(+), 2 deletions(-) create mode 100644 assets/layers/speed_display/license_info.json create mode 100644 assets/layers/speed_display/speed_display.json create mode 100644 assets/layers/speed_display/speed_display.svg diff --git a/assets/layers/speed_camera/speed_camera.json b/assets/layers/speed_camera/speed_camera.json index 33cb0a52a5..883635e59f 100644 --- a/assets/layers/speed_camera/speed_camera.json +++ b/assets/layers/speed_camera/speed_camera.json @@ -31,6 +31,12 @@ "render": { "en": "The maximum speed allowed is {canonical(maxspeed)}" } + }, + { + "id": "ref", + "render": { + "en": "The reference number of this speed camera is {ref}" + } } ], "presets": [ @@ -39,7 +45,7 @@ "highway=speed_camera" ], "title": { - "en": "a speed Camera" + "en": "a speed camera" }, "preciseInput": { "preferredBackground": "photo", diff --git a/assets/layers/speed_display/license_info.json b/assets/layers/speed_display/license_info.json new file mode 100644 index 0000000000..04cf544188 --- /dev/null +++ b/assets/layers/speed_display/license_info.json @@ -0,0 +1,12 @@ +[ + { + "path": "speed_display.svg", + "license": "CC0", + "authors": [ + "Robin van der Linde" + ], + "sources": [ + "https://www.keshikan.net/fonts-e.html" + ] + } +] \ No newline at end of file diff --git a/assets/layers/speed_display/speed_display.json b/assets/layers/speed_display/speed_display.json new file mode 100644 index 0000000000..4c2b1fa488 --- /dev/null +++ b/assets/layers/speed_display/speed_display.json @@ -0,0 +1,132 @@ +{ + "id": "speed_display", + "name": { + "en": "Speed Display" + }, + "description": { + "en": "Layer showing speed displays that alert drivers of their speed." + }, + "title": { + "render": { + "en": "Speed Display" + } + }, + "minzoom": 12, + "source": { + "osmTags": "highway=speed_display" + }, + "tagRenderings": [ + { + "id": "maxspeed", + "question": { + "en": "What is the maximum speed allowed at this speed display?" + }, + "freeform": { + "key": "maxspeed", + "type": "pnat", + "placeholder": { + "en": "Speed allowed at speed display" + } + }, + "render": { + "en": "The maximum speed allowed at this speed display is {canonical(maxspeed)}" + } + }, + { + "id": "inscription", + "question": { + "en": "What is the text on this speed display?" + }, + "freeform": { + "key": "inscription", + "type": "string", + "placeholder": { + "en": "Text on speed display (e.g. 'Your speed')" + } + }, + "render": { + "en": "The text on this speed display is {inscription}" + } + } + ], + "presets": [ + { + "title": { + "en": "a speed display" + }, + "tags": [ + "highway=speed_display" + ], + "preciseInput": { + "preferredBackground": "photo" + } + } + ], + "mapRendering": [ + { + "location": [ + "point", + "centroid" + ], + "icon": "./assets/layers/speed_display/speed_display.svg" + } + ], + "units": [ + { + "appliesToKey": [ + "maxspeed" + ], + "applicableUnits": [ + { + "#": "km/h is the default for a maxspeed; should be empty string", + "canonicalDenomination": "", + "alternativeDenomination": [ + "km/u", + "kmh", + "kph" + ], + "human": { + "en": "kilometers/hour", + "ca": "quilòmetres/hora", + "es": "kilómetros/hora", + "nl": "kilometers/uur", + "de": "Kilometer/Stunde" + }, + "humanShort": { + "en": "km/h", + "ca": "km/h", + "es": "km/h", + "nl": "km/u", + "de": "km/h" + } + }, + { + "canonicalDenomination": "mph", + "useIfNoUnitGiven": [ + "gb", + "us" + ], + "alternativeDenomination": [ + "m/u", + "mh", + "m/ph" + ], + "human": { + "en": "miles/hour", + "ca": "milles/hora", + "es": "millas/hora", + "nl": "miles/uur", + "de": "Meilen/Stunde" + }, + "humanShort": { + "en": "mph", + "ca": "mph", + "es": "mph", + "nl": "mph", + "de": "mph" + } + } + ] + } + ] +} diff --git a/assets/layers/speed_display/speed_display.svg b/assets/layers/speed_display/speed_display.svg new file mode 100644 index 0000000000..45546f684b --- /dev/null +++ b/assets/layers/speed_display/speed_display.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/assets/themes/maxspeed/maxspeed.json b/assets/themes/maxspeed/maxspeed.json index 4e8f4546cf..9d3e18d768 100644 --- a/assets/themes/maxspeed/maxspeed.json +++ b/assets/themes/maxspeed/maxspeed.json @@ -29,6 +29,7 @@ "widenFactor": 0.01, "layers": [ "maxspeed", - "speed_camera" + "speed_camera", + "speed_display" ] } From e78aca9b2ef3f21762c912238f561d51cb320942 Mon Sep 17 00:00:00 2001 From: Robin van der Linde Date: Sun, 16 Oct 2022 21:43:47 +0200 Subject: [PATCH 3/3] Add missing condition --- assets/layers/speed_camera/speed_camera.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/assets/layers/speed_camera/speed_camera.json b/assets/layers/speed_camera/speed_camera.json index 883635e59f..c249d78958 100644 --- a/assets/layers/speed_camera/speed_camera.json +++ b/assets/layers/speed_camera/speed_camera.json @@ -36,7 +36,8 @@ "id": "ref", "render": { "en": "The reference number of this speed camera is {ref}" - } + }, + "condition": "ref~*" } ], "presets": [