diff --git a/assets/layers/lock_outline/lock_outline.json b/assets/layers/lock_outline/lock_outline.json new file mode 100644 index 0000000000..4488f6800f --- /dev/null +++ b/assets/layers/lock_outline/lock_outline.json @@ -0,0 +1,37 @@ +{ + "id": "lock_outline", + "name": { + "en": "Lock area" + }, + "description": { + "en": "Small layer showing the outline of the lock waterway, but without containing any information" + }, + "source": { + "osmTags": "water=lock" + }, + "minzoom": 15, + "title": null, + "pointRendering": [ + { + "location": [ + "point" + ], + "marker": [ + { + "icon": "circle", + "color": "white" + } + ] + } + ], + "lineRendering": [ + { + "width": 1, + "color": "blue" + } + ], + "tagRenderings": [], + "allowMove": false, + "credits": "Pieter Vander Vennet", + "credits:uid": 3818858 +} diff --git a/assets/layers/waterway/waterway.json b/assets/layers/waterway/waterway.json new file mode 100644 index 0000000000..f23a5c2e89 --- /dev/null +++ b/assets/layers/waterway/waterway.json @@ -0,0 +1,79 @@ +{ + "id": "waterway", + "name": { + "en": "Navigable waterways" + }, + "description": { + "en": "Waterways which are navigable by small boats, yachts, ..." + }, + "source": { + "osmTags": { + "and": [ + "motorboat!=no", + "boat!=no", + { + "or": [ + "waterway=river", + "waterway=canal" + ] + } + ] + } + }, + "title": { + "en": "{name}" + }, + "pointRendering": null, + "lineRendering": [ + { + "color": "blue", + "width": { + "mappings": [ + { + "if": "waterway=canal", + "then": "8" + }, + { + "if": "waterway=river", + "then": "8" + }, + { + "if": "waterway=stream", + "then": "6" + } + ] + } + } + ], + "tagRenderings": [ + "images", + "wikipedia", + { + "id": "type", + "question": { + "en": "What type of waterway is this?" + }, + "mappings": [ + { + "if": "waterway=river", + "then": { + "en": "This is a river" + } + }, + { + "if": "waterway=canal", + "then": { + "en": "This is a canal" + } + }, + { + "if": "waterway=stream", + "then": { + "en": "This is a stream " + } + } + ] + } + ], + "allowMove": false +} diff --git a/assets/layers/waterway_lock/license_info.json b/assets/layers/waterway_lock/license_info.json new file mode 100644 index 0000000000..df32c5e317 --- /dev/null +++ b/assets/layers/waterway_lock/license_info.json @@ -0,0 +1,12 @@ +[ + { + "path": "waterway_lock.svg", + "license": "CC0-1.0", + "authors": [ + "Oosoom" + ], + "sources": [ + "https://commons.wikimedia.org/wiki/File:BSicon_uLOCKSl.svg" + ] + } +] \ No newline at end of file diff --git a/assets/layers/waterway_lock/waterway_lock.json b/assets/layers/waterway_lock/waterway_lock.json new file mode 100644 index 0000000000..67315bed6c --- /dev/null +++ b/assets/layers/waterway_lock/waterway_lock.json @@ -0,0 +1,220 @@ +{ + "id": "waterway_lock", + "name": { + "en": "Locks" + }, + "description": { + "en": "Locks on canals, rivers and other navigable waterways " + }, + "source": { + "osmTags": "lock=yes" + }, + "minzoom": 10, + "title": { + "render": { + "en": "{lock_name} Lock {lock_ref} (on {name})" + } + }, + "pointRendering": [ + { + "location": [ + "point", + "polygon_centroid", + "projected_centerpoint" + ], + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/waterway_lock/waterway_lock.svg" + } + ], + "rotation": "calc( {_direction:centerpoint}deg - 90deg )", + "pitchAlignment": "map", + "label": { + "mappings": [ + { + "if": { + "and": [ + "lock_name~*", + "vhf~*" + ] + }, + "then": { + "en": "{lock_name} (VHF {vhf})" + } + }, + { + "if": "lock_name~*", + "then": { + "en": "{lock_name}" + } + } + ] + }, + "labelCssClasses": "bg-white rounded px-2" + } + ], + "lineRendering": [ + { + "width": 1, + "color": "blue" + } + ], + "tagRenderings": [ + "images", + { + "question": { + "en": "What is the maximum width (beam) of boats using this lock?" + }, + "id": "max_length", + "render": { + "en": "This lock permits boats with a maximum width of {maxwidth}" + }, + "freeform": { + "key": "maxwidth", + "unit": "length" + }, + "questionHint": { + "en": "Omit units if designated in meters. Feet and inches maybe indicated with apostrophes and quotation marks." + }, + "condition": "waterway!=derelict_canal" + }, + { + "question": { + "en": "What is the maximum length of boats that may use this lock?" + }, + "id": "2_qyvwk0kx77jcmh2", + "multiAnswer": false, + "freeform": { + "key": "maxlength" + }, + "render": { + "en": "Boats with a maximum length of {maxlength} may use this lock." + }, + "questionHint": { + "en": "Omit units if designated in meters. Feet and inches maybe indicated with apostrophes and quotation marks." + }, + "condition": "waterway!=derelict_canal" + }, + { + "question": { + "en": "How far does this lock raise or lower a boat?" + }, + "id": "3_sm4v6ow91r2i4kd", + "questionHint": { + "en": "Omit units if designated in meters. Feet and inches maybe indicated with apostrophes and quotation marks." + }, + "multiAnswer": false, + "freeform": { + "key": "lock:height", + "type": "nat" + }, + "render": { + "en": "This lock has a drop height of {lock:height}" + }, + "condition": "waterway!=derelict_canal" + }, + { + "question": { + "en": "Is this lock automated?" + }, + "id": "4_pwnx07go36rzk54", + "mappings": [ + { + "if": "automated=yes", + "then": { + "en": "This lock is automated (operated from control panel or control room)" + }, + "ifnot": "automated=" + }, + { + "if": "manual=yes", + "then": { + "en": "This lock is manually operated (with muscle power)" + }, + "ifnot": "manual=" + } + ], + "multiAnswer": true, + "condition": "waterway!=derelict_canal" + }, + { + "question": { + "en": "What is the maximum draft of boats using this lock?" + }, + "id": "5_1sz01guflvjeyx7", + "questionHint": { + "en": "Omit units if designated in meters. Feet and inches maybe indicated with apostrophes and quotation marks." + }, + "multiAnswer": false, + "render": { + "en": "The maximum draft of boats using this lock is {draft}." + }, + "freeform": { + "key": "draft" + }, + "condition": "waterway!=derelict_canal" + }, + { + "question": { + "en": "What is the name of this lock?" + }, + "id": "lock_name", + "questionHint": { + "en": "The numerical reference code can be added in a follow-up question " + }, + "multiAnswer": false, + "render": { + "en": "This lock is named {lock_name}" + }, + "freeform": { + "key": "lock_name" + } + }, + { + "question": { + "en": "Does this lock have a reference number/code?" + }, + "id": "ref", + "multiAnswer": false, + "render": { + "en": "This is lock {lock_ref}" + }, + "freeform": { + "key": "lock_ref" + } + }, + { + "question": { + "en": "What VHF channel should be used to communicate with this lock?" + }, + "id": "vhf", + "render": { + "en": "The VHF channelnis {vhf}" + }, + "freeform": { + "key": "vhf" + } + }, + "opening_hours_24_7", + "phone", + { + "question": { + "en": "What is the name of the waterway that this lock is on?" + }, + "id": "waterway_name", + "render": { + "en": "The waterway is name {name}" + }, + "freeform": { + "key": "name" + } + } + ], + "allowMove": false, + "credits": "Pieter Vander Vennet", + "credits:uid": 3818858 +} \ No newline at end of file diff --git a/assets/layers/waterway_lock/waterway_lock.svg b/assets/layers/waterway_lock/waterway_lock.svg new file mode 100644 index 0000000000..59e3454060 --- /dev/null +++ b/assets/layers/waterway_lock/waterway_lock.svg @@ -0,0 +1,16 @@ + +BSicon lock complex + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/layers/waterway_lock/waterway_lock.svg.license b/assets/layers/waterway_lock/waterway_lock.svg.license new file mode 100644 index 0000000000..1d28ce620d --- /dev/null +++ b/assets/layers/waterway_lock/waterway_lock.svg.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Oosoom +SPDX-License-Identifier: CC0-1.0 \ No newline at end of file diff --git a/assets/themes/narrowboat/narrowboat.json b/assets/themes/narrowboat/narrowboat.json new file mode 100644 index 0000000000..97d477c5c8 --- /dev/null +++ b/assets/themes/narrowboat/narrowboat.json @@ -0,0 +1,37 @@ +{ + "id": "narrowboat", + "title": { + "en": "Narrowboat Amenities" + }, + "description": { + "en": "Features of interest to narrowboats and similar cruisers on inland waterways. " + }, + "icon": "./assets/layers/waterway_lock/waterway_lock.svg", + "startZoom": 5, + "startLat": 54.44, + "startLon": -5.23, + "layers": [ + "waterway_lock", + "waterway", + "lock_outline", + { + "builtin": [ + "drinking_water", + "shower", + "toilet" + ], + "override": { + "minzoom": 14 + } + } + ], + "#layers": [ + "https://studio.mapcomplete.org/89098/layers/waterway_locks/waterway_locks.json", + "https://studio.mapcomplete.org/89098/layers/waterway_sanitary_dump_station/waterway_sanitary_dump_station.json", + "https://studio.mapcomplete.org/89098/layers/fuel_dock/fuel_dock.json", + "https://studio.mapcomplete.org/89098/layers/water_point/water_point.json", + "https://studio.mapcomplete.org/89098/layers/winding_holes/winding_holes.json", + "https://studio.mapcomplete.org/89098/layers/marinas/marinas.json", + "https://studio.mapcomplete.org/89098/layers/chandler/chandler.json" + ] +}