diff --git a/.github/workflows/android-ci.yml b/.github/workflows/android-ci.yml
index 9b76f2d6d..dc156eb76 100644
--- a/.github/workflows/android-ci.yml
+++ b/.github/workflows/android-ci.yml
@@ -96,12 +96,12 @@ jobs:
- name: Build Test APK
run: |
- MAPBOX_DEVELOPER_CONFIG_XML='${{ secrets.MAPBOX_DEVELOPER_CONFIG_XML }}'
- if [ -n "${MAPBOX_DEVELOPER_CONFIG_XML}" ]; then
- echo "${MAPBOX_DEVELOPER_CONFIG_XML}" > MapboxGLAndroidSDKTestApp/src/main/res/values/developer-config.xml
+ MAPLIBRE_DEVELOPER_CONFIG_XML='${{ secrets.MAPLIBRE_DEVELOPER_CONFIG_XML }}'
+ if [ -n "${MAPLIBRE_DEVELOPER_CONFIG_XML}" ]; then
+ echo "${MAPLIBRE_DEVELOPER_CONFIG_XML}" > MapboxGLAndroidSDKTestApp/src/main/res/values/developer-config.xml
make android-ui-test-arm-v8
else
- echo "No secrets.MAPBOX_DEVELOPER_CONFIG_XML variable set, skipping apk build..."
+ echo "No secrets.MAPLIBRE_DEVELOPER_CONFIG_XML variable set, skipping apk build..."
fi
shell: bash
@@ -127,7 +127,7 @@ jobs:
--app MapboxGLAndroidSDKTestApp/build/outputs/apk/debug/MapboxGLAndroidSDKTestApp-debug.apk \
--test MapboxGLAndroidSDKTestApp/build/outputs/apk/androidTest/debug/MapboxGLAndroidSDKTestApp-debug-androidTest.apk \
--device-ids sailfish --os-version-ids 26 --locales en --orientations portrait --timeout 20m \
- --environment-variables coverage=true,coverageFile="/sdcard/coverage.ec" --directories-to-pull /sdcard --results-dir mapbox-android-sdk-${CIRCLE_BUILD_NUM}
+ --environment-variables coverage=true,coverageFile="/sdcard/coverage.ec" --directories-to-pull /sdcard --results-dir maplibre-android-sdk-${{ github.run_number }}
else
echo "No secrets.GLCLOUD_SERVICE_JSON variable set, skipping instrumentation tests..."
fi
diff --git a/.github/workflows/android-release.yml b/.github/workflows/android-release.yml
index d065fae9c..ec40859dc 100644
--- a/.github/workflows/android-release.yml
+++ b/.github/workflows/android-release.yml
@@ -98,12 +98,12 @@ jobs:
- name: Build release Test App
run: |
- MAPBOX_DEVELOPER_CONFIG_XML='${{ secrets.MAPBOX_DEVELOPER_CONFIG_XML }}'
- if [ -n "${MAPBOX_DEVELOPER_CONFIG_XML}" ]; then
- echo "${MAPBOX_DEVELOPER_CONFIG_XML}" > MapboxGLAndroidSDKTestApp/src/main/res/values/developer-config.xml
+ MAPLIBRE_DEVELOPER_CONFIG_XML='${{ secrets.MAPLIBRE_DEVELOPER_CONFIG_XML }}'
+ if [ -n "${MAPLIBRE_DEVELOPER_CONFIG_XML}" ]; then
+ echo "${MAPLIBRE_DEVELOPER_CONFIG_XML}" > MapboxGLAndroidSDKTestApp/src/main/res/values/developer-config.xml
make android
else
- echo "No secrets.MAPBOX_DEVELOPER_CONFIG_XML variable set, skipping apk build..."
+ echo "No secrets.MAPLIBRE_DEVELOPER_CONFIG_XML variable set, skipping apk build..."
fi
shell: bash
diff --git a/.gitignore b/.gitignore
index 7c5833a18..470b86d68 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,4 +25,13 @@
/new_offline.db
*.gpg
/.vscode
+/platform/android/node_modules
/platform/android/signing-key.text
+/platform/android/.java-version
+*.hprof
+/platform/ios/platform/ios/benchmark/assets/tiles/tiles
+/platform/ios/platform/ios/benchmark/assets/glyphs/Roboto Regular,Noto Sans Regular
+/platform/ios/platform/ios/benchmark/assets/glyphs/Roboto Medium,Noto Sans Regular
+/platform/ios/platform/ios/benchmark/assets/glyphs/Roboto Condensed Italic,Noto Sans Italic
+/platform/ios/platform/ios/benchmark/assets/glyphs/Noto Sans Regular
+/platform/android/key.json
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c06c4b401..491849c94 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -267,6 +267,8 @@ add_library(
${PROJECT_SOURCE_DIR}/include/mbgl/util/run_loop.hpp
${PROJECT_SOURCE_DIR}/include/mbgl/util/size.hpp
${PROJECT_SOURCE_DIR}/include/mbgl/util/string.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/default_style.hpp
+ ${PROJECT_SOURCE_DIR}/include/mbgl/util/tile_server_options.hpp
${PROJECT_SOURCE_DIR}/include/mbgl/util/thread.hpp
${PROJECT_SOURCE_DIR}/include/mbgl/util/tileset.hpp
${PROJECT_SOURCE_DIR}/include/mbgl/util/timer.hpp
@@ -529,7 +531,7 @@ add_library(
${PROJECT_SOURCE_DIR}/src/mbgl/sprite/sprite_parser.cpp
${PROJECT_SOURCE_DIR}/src/mbgl/sprite/sprite_parser.hpp
${PROJECT_SOURCE_DIR}/src/mbgl/storage/asset_file_source.hpp
- ${PROJECT_SOURCE_DIR}/src/mbgl/storage/mbtiles_file_source.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/storage/mbtiles_file_source.hpp
${PROJECT_SOURCE_DIR}/src/mbgl/storage/file_source_manager.cpp
${PROJECT_SOURCE_DIR}/src/mbgl/storage/http_file_source.hpp
${PROJECT_SOURCE_DIR}/src/mbgl/storage/local_file_source.hpp
@@ -810,6 +812,8 @@ add_library(
${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_cover_impl.cpp
${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_cover_impl.hpp
${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_range.hpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/default_style.cpp
+ ${PROJECT_SOURCE_DIR}/src/mbgl/util/tile_server_options.cpp
${PROJECT_SOURCE_DIR}/src/mbgl/util/tiny_sdf.cpp
${PROJECT_SOURCE_DIR}/src/mbgl/util/tiny_sdf.hpp
${PROJECT_SOURCE_DIR}/src/mbgl/util/token.hpp
diff --git a/benchmark/api/query.benchmark.cpp b/benchmark/api/query.benchmark.cpp
index 714ca8a1a..8de8cf465 100644
--- a/benchmark/api/query.benchmark.cpp
+++ b/benchmark/api/query.benchmark.cpp
@@ -32,7 +32,7 @@ public:
HeadlessFrontend frontend { { 1000, 1000 }, 1 };
Map map { frontend, MapObserver::nullObserver(),
MapOptions().withMapMode(MapMode::Static).withSize(frontend.getSize()),
- ResourceOptions().withCachePath("benchmark/fixtures/api/cache.db").withAssetPath(".").withAccessToken("foobar") };
+ ResourceOptions().withCachePath("benchmark/fixtures/api/cache.db").withAssetPath(".").withApiKey("foobar") };
ScreenBox box{{ 0, 0 }, { 1000, 1000 }};
};
diff --git a/benchmark/api/render.benchmark.cpp b/benchmark/api/render.benchmark.cpp
index 14cfdd67f..54755f089 100644
--- a/benchmark/api/render.benchmark.cpp
+++ b/benchmark/api/render.benchmark.cpp
@@ -57,7 +57,7 @@ static void API_renderStill_reuse_map(::benchmark::State& state) {
HeadlessFrontend frontend { size, pixelRatio };
Map map { frontend, MapObserver::nullObserver(),
MapOptions().withMapMode(MapMode::Static).withSize(size).withPixelRatio(pixelRatio),
- ResourceOptions().withCachePath(cachePath).withAccessToken("foobar") };
+ ResourceOptions().withCachePath(cachePath).withApiKey("foobar") };
prepare(map);
for (auto _ : state) {
@@ -70,7 +70,7 @@ static void API_renderStill_reuse_map_formatted_labels(::benchmark::State& state
HeadlessFrontend frontend { size, pixelRatio };
Map map { frontend, MapObserver::nullObserver(),
MapOptions().withMapMode(MapMode::Static).withSize(size).withPixelRatio(pixelRatio),
- ResourceOptions().withCachePath(cachePath).withAccessToken("foobar") };
+ ResourceOptions().withCachePath(cachePath).withApiKey("foobar") };
prepare(map, util::read_file("benchmark/fixtures/api/style_formatted_labels.json"));
for (auto _ : state) {
@@ -83,7 +83,7 @@ static void API_renderStill_reuse_map_switch_styles(::benchmark::State& state) {
HeadlessFrontend frontend { size, pixelRatio };
Map map { frontend, MapObserver::nullObserver(),
MapOptions().withMapMode(MapMode::Static).withSize(size).withPixelRatio(pixelRatio),
- ResourceOptions().withCachePath(cachePath).withAccessToken("foobar") };
+ ResourceOptions().withCachePath(cachePath).withApiKey("foobar") };
for (auto _ : state) {
prepare(map, { "{}" });
@@ -100,7 +100,7 @@ static void API_renderStill_recreate_map(::benchmark::State& state) {
HeadlessFrontend frontend { size, pixelRatio };
Map map { frontend, MapObserver::nullObserver(),
MapOptions().withMapMode(MapMode::Static).withSize(size).withPixelRatio(pixelRatio),
- ResourceOptions().withCachePath(cachePath).withAccessToken("foobar") };
+ ResourceOptions().withCachePath(cachePath).withApiKey("foobar") };
prepare(map);
frontend.render(map);
}
@@ -114,7 +114,7 @@ static void API_renderStill_recreate_map_2(::benchmark::State& state) {
Map map{frontend,
MapObserver::nullObserver(),
MapOptions().withMapMode(MapMode::Static).withSize(size).withPixelRatio(pixelRatio),
- ResourceOptions().withCachePath(cachePath).withAccessToken("foobar")};
+ ResourceOptions().withCachePath(cachePath).withApiKey("foobar")};
prepare_map2(map);
frontend.render(map);
}
@@ -127,7 +127,7 @@ static void API_renderStill_multiple_sources(::benchmark::State& state) {
Map map{frontend,
MapObserver::nullObserver(),
MapOptions().withMapMode(MapMode::Static).withSize(size).withPixelRatio(pixelRatio),
- ResourceOptions().withCachePath(cachePath).withAccessToken("foobar")};
+ ResourceOptions().withCachePath(cachePath).withApiKey("foobar")};
prepare(map);
auto& style = map.getStyle();
const int kSourcesCount = 50;
diff --git a/benchmark/fixtures/api/style.json b/benchmark/fixtures/api/style.json
index cf88aeb6e..5270b6cec 100644
--- a/benchmark/fixtures/api/style.json
+++ b/benchmark/fixtures/api/style.json
@@ -1,3993 +1,6514 @@
{
- "version": 8,
- "name": "Mapbox Streets",
- "metadata": {
- "mapbox:autocomposite": true,
- "mapbox:type": "default",
- "mapbox:groups": {
- "1444934828655.3389": { "name": "Aeroways", "collapsed": true },
- "1444933322393.2852": { "name": "POI labels (scalerank 1)", "collapsed": true },
- "1444855786460.0557": { "name": "Roads", "collapsed": true },
- "1444933575858.6992": { "name": "Highway shields", "collapsed": true },
- "1444934295202.7542": { "name": "Admin boundaries", "collapsed": true },
- "1444856151690.9143": { "name": "State labels", "collapsed": true },
- "1444933721429.3076": { "name": "Road labels", "collapsed": true },
- "1444933358918.2366": { "name": "POI labels (scalerank 2)", "collapsed": true },
- "1444933808272.805": { "name": "Water labels", "collapsed": true },
- "1444933372896.5967": { "name": "POI labels (scalerank 3)", "collapsed": true },
- "1444855799204.86": { "name": "Bridges", "collapsed": true },
- "1444856087950.3635": { "name": "Marine labels", "collapsed": true },
- "1456969573402.7817": { "name": "Hillshading", "collapsed": true },
- "1444862510685.128": { "name": "City labels", "collapsed": true },
- "1444855769305.6016": { "name": "Tunnels", "collapsed": true },
- "1456970288113.8113": { "name": "Landcover", "collapsed": true },
- "1444856144497.7825": { "name": "Country labels", "collapsed": true },
- "1444933456003.5437": { "name": "POI labels (scalerank 4)", "collapsed": true }
- }
- },
- "sources": {
- "composite": { "url": "mapbox://mapbox.mapbox-terrain-v2,mapbox.mapbox-streets-v7", "type": "vector" }
- },
- "sprite": "mapbox://sprites/mapbox/streets-v10",
- "glyphs": "mapbox://fonts/mapbox/{fontstack}/{range}.pbf",
- "visibility": "public",
+ "id": "streets",
+ "name": "Streets",
+ "zoom": 1,
+ "pitch": 0,
+ "center": [
+ 0,
+ 0
+ ],
+ "glyphs": "maptiler://fonts/{fontstack}/{range}.pbf",
"layers": [
{
"id": "background",
"type": "background",
- "layout": {},
"paint": {
- "background-color": { "base": 1, "stops": [ [ 11, "hsl(35, 32%, 91%)" ], [ 13, "hsl(35, 12%, 89%)" ] ] }
+ "background-color": {
+ "stops": [
+ [
+ 6,
+ "rgba(252, 247, 229, 1)"
+ ],
+ [
+ 10,
+ "rgba(252, 247, 229, 1)"
+ ],
+ [
+ 14,
+ "rgba(246, 241, 229, 1)"
+ ],
+ [
+ 15,
+ "rgba(246, 241, 229, 1)"
+ ]
+ ]
+ }
+ },
+ "layout": {
+ "visibility": "visible"
}
},
{
- "id": "landcover_snow",
+ "id": "landcover_cropland",
"type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "filter": [ "==", "class", "snow" ],
- "layout": {},
- "paint": { "fill-color": "hsl(0, 0%, 100%)", "fill-opacity": 0.2, "fill-antialias": false }
+ "paint": {
+ "fill-color": "rgba(243, 235, 195, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "crop"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_grassland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(226, 236, 197, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "grass"
+ ]
+ ],
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_scrubland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(199, 230, 179, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "scrub"
+ ]
+ ],
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_treeland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(190, 222, 173, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "tree"
+ ]
+ ],
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_forestland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(171, 217, 170, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "forest"
+ ]
+ ],
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_snowland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "hsl(0, 0%, 100%)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "snow"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "park_outline",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(228, 241, 215, 1)",
+ "line-opacity": 1,
+ "line-dasharray": [
+ 1,
+ 1.5
+ ]
+ },
+ "filter": [
+ "all"
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "source-layer": "park"
+ },
+ {
+ "id": "landuse_residential",
+ "type": "fill",
+ "paint": {
+ "fill-color": {
+ "base": 1,
+ "stops": [
+ [
+ 9,
+ "rgba(233, 227, 210, 0.80)"
+ ],
+ [
+ 12,
+ "rgba(233, 227, 210, 0.55)"
+ ],
+ [
+ 16,
+ "rgba(233, 227, 210, 0.35)"
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "class",
+ "residential",
+ "suburbs",
+ "neighbourhood"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 24,
+ "metadata": {},
+ "source-layer": "landuse"
},
{
"id": "landcover_wood",
"type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "maxzoom": 14,
- "filter": [ "==", "class", "wood" ],
- "layout": {},
"paint": {
- "fill-color": "hsl(75, 62%, 81%)",
- "fill-opacity": { "base": 1.5, "stops": [ [ 2, 0.3 ], [ 7, 0 ] ] },
+ "fill-color": "hsla(98, 61%, 72%, 0.7)",
+ "fill-opacity": 0.4,
"fill-antialias": false
- }
- },
- {
- "id": "landcover_scrub",
- "type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "maxzoom": 14,
- "filter": [ "==", "class", "scrub" ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(75, 62%, 81%)",
- "fill-opacity": { "base": 1.5, "stops": [ [ 2, 0.3 ], [ 7, 0 ] ] },
- "fill-antialias": false
- }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "wood"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landcover"
},
{
"id": "landcover_grass",
"type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "maxzoom": 14,
- "filter": [ "==", "class", "grass" ],
- "layout": {},
"paint": {
- "fill-color": "hsl(75, 62%, 81%)",
- "fill-opacity": { "base": 1.5, "stops": [ [ 2, 0.3 ], [ 7, 0 ] ] },
+ "fill-color": "rgba(224, 232, 201, 1)",
+ "fill-opacity": 0.3,
"fill-antialias": false
- }
- },
- {
- "id": "landcover_crop",
- "type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "maxzoom": 14,
- "filter": [ "==", "class", "crop" ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(75, 62%, 81%)",
- "fill-opacity": { "base": 1.5, "stops": [ [ 2, 0.3 ], [ 7, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "national_park",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse_overlay",
- "filter": [ "==", "class", "national_park" ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(100, 58%, 76%)",
- "fill-opacity": { "base": 1, "stops": [ [ 5, 0 ], [ 6, 0.5 ] ] }
- }
- },
- {
- "id": "hospital",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "hospital" ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15.5, "hsl(340, 37%, 87%)" ], [ 16, "hsl(340, 63%, 89%)" ] ] }
- }
- },
- {
- "id": "school",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "school" ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15.5, "hsl(50, 47%, 81%)" ], [ 16, "hsl(50, 63%, 84%)" ] ] }
- }
- },
- {
- "id": "park",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "park" ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(100, 58%, 76%)",
- "fill-opacity": { "base": 1, "stops": [ [ 5, 0 ], [ 6, 1 ] ] }
- }
- },
- {
- "id": "pitch",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "pitch" ],
- "layout": {},
- "paint": { "fill-color": "hsl(100, 57%, 72%)" }
- },
- {
- "id": "pitch-line",
- "type": "line",
- "source": "composite",
- "source-layer": "landuse",
- "minzoom": 15,
- "filter": [ "==", "class", "pitch" ],
- "layout": { "line-join": "miter" },
- "paint": { "line-color": "hsl(75, 57%, 84%)" }
- },
- {
- "id": "cemetery",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "cemetery" ],
- "layout": {},
- "paint": { "fill-color": "hsl(75, 37%, 81%)" }
- },
- {
- "id": "industrial",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "industrial" ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15.5, "hsl(230, 15%, 86%)" ], [ 16, "hsl(230, 29%, 89%)" ] ] }
- }
- },
- {
- "id": "sand",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "sand" ],
- "layout": {},
- "paint": { "fill-color": "hsl(60, 46%, 87%)" }
- },
- {
- "id": "hillshade_highlight_bright",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 94 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(0, 0%, 100%)",
- "fill-opacity": { "stops": [ [ 14, 0.12 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_highlight_med",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 90 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(0, 0%, 100%)",
- "fill-opacity": { "stops": [ [ 14, 0.12 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_shadow_faint",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 89 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(56, 59%, 22%)",
- "fill-opacity": { "stops": [ [ 14, 0.05 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_shadow_med",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 78 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(56, 59%, 22%)",
- "fill-opacity": { "stops": [ [ 14, 0.05 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_shadow_dark",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 67 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(56, 59%, 22%)",
- "fill-opacity": { "stops": [ [ 14, 0.06 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_shadow_extreme",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 56 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(56, 59%, 22%)",
- "fill-opacity": { "stops": [ [ 14, 0.06 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "waterway-river-canal",
- "type": "line",
- "source": "composite",
- "source-layer": "waterway",
- "minzoom": 8,
- "filter": [ "in", "class", "canal", "river" ],
- "layout": {
- "line-cap": { "base": 1, "stops": [ [ 0, "butt" ], [ 11, "round" ] ] },
- "line-join": "round"
},
- "paint": {
- "line-color": "hsl(205, 87%, 76%)",
- "line-width": { "base": 1.3, "stops": [ [ 8.5, 0.1 ], [ 20, 8 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 8, 0 ], [ 8.5, 1 ] ] }
- }
- },
- {
- "id": "waterway-small",
- "type": "line",
- "source": "composite",
- "source-layer": "waterway",
- "minzoom": 13,
- "filter": [ "!in", "class", "canal", "river" ],
- "layout": { "line-join": "round", "line-cap": "round" },
- "paint": {
- "line-color": "hsl(205, 87%, 76%)",
- "line-width": { "base": 1.35, "stops": [ [ 13.5, 0.1 ], [ 20, 3 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 13, 0 ], [ 13.5, 1 ] ] }
- }
- },
- {
- "id": "water-shadow",
- "type": "fill",
- "source": "composite",
- "source-layer": "water",
- "layout": {},
- "paint": {
- "fill-color": "hsl(215, 84%, 69%)",
- "fill-translate": { "base": 1.2, "stops": [ [ 7, [ 0, 0 ] ], [ 16, [ -1, -1 ] ] ] },
- "fill-translate-anchor": "viewport",
- "fill-opacity": 1
- }
- },
- { "id": "water", "ref": "water-shadow", "paint": { "fill-color": "hsl(196, 80%, 70%)" } },
- {
- "id": "barrier_line-land-polygon",
- "type": "fill",
- "source": "composite",
- "source-layer": "barrier_line",
- "filter": [ "all", [ "==", "$type", "Polygon" ], [ "==", "class", "land" ] ],
- "layout": {},
- "paint": { "fill-color": "hsl(35, 12%, 89%)" }
- },
- {
- "id": "barrier_line-land-line",
- "type": "line",
- "source": "composite",
- "source-layer": "barrier_line",
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "class", "land" ] ],
- "layout": { "line-cap": "round" },
- "paint": {
- "line-width": { "base": 1.99, "stops": [ [ 14, 0.75 ], [ 20, 40 ] ] },
- "line-color": "hsl(35, 12%, 89%)"
- }
- },
- {
- "id": "aeroway-polygon",
- "type": "fill",
- "metadata": { "mapbox:group": "1444934828655.3389" },
- "source": "composite",
- "source-layer": "aeroway",
- "minzoom": 11,
- "filter": [ "all", [ "==", "$type", "Polygon" ], [ "!=", "type", "apron" ] ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15, "hsl(230, 23%, 82%)" ], [ 16, "hsl(230, 37%, 84%)" ] ] },
- "fill-opacity": { "base": 1, "stops": [ [ 11, 0 ], [ 11.5, 1 ] ] }
- }
- },
- {
- "id": "aeroway-runway",
- "type": "line",
- "metadata": { "mapbox:group": "1444934828655.3389" },
- "source": "composite",
- "source-layer": "aeroway",
- "minzoom": 9,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "type", "runway" ] ],
- "layout": {},
- "paint": {
- "line-color": { "base": 1, "stops": [ [ 15, "hsl(230, 23%, 82%)" ], [ 16, "hsl(230, 37%, 84%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 9, 1 ], [ 18, 80 ] ] }
- }
- },
- {
- "id": "aeroway-taxiway",
- "type": "line",
- "metadata": { "mapbox:group": "1444934828655.3389" },
- "source": "composite",
- "source-layer": "aeroway",
- "minzoom": 9,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "type", "taxiway" ] ],
- "layout": {},
- "paint": {
- "line-color": { "base": 1, "stops": [ [ 15, "hsl(230, 23%, 82%)" ], [ 16, "hsl(230, 37%, 84%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 10, 0.5 ], [ 18, 20 ] ] }
- }
- },
- {
- "id": "building-line",
- "type": "line",
- "source": "composite",
- "source-layer": "building",
- "minzoom": 15,
- "filter": [ "all", [ "!=", "type", "building:part" ], [ "==", "underground", "false" ] ],
- "layout": {},
- "paint": {
- "line-color": "hsl(35, 6%, 79%)",
- "line-width": { "base": 1.5, "stops": [ [ 15, 0.75 ], [ 20, 3 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 15.5, 0 ], [ 16, 1 ] ] }
- }
- },
- {
- "id": "building",
- "type": "fill",
- "source": "composite",
- "source-layer": "building",
- "minzoom": 15,
- "filter": [ "all", [ "!=", "type", "building:part" ], [ "==", "underground", "false" ] ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15, "hsl(35, 11%, 88%)" ], [ 16, "hsl(35, 8%, 85%)" ] ] },
- "fill-opacity": { "base": 1, "stops": [ [ 15.5, 0 ], [ 16, 1 ] ] },
- "fill-outline-color": "hsl(35, 6%, 79%)"
- }
- },
- {
- "id": "tunnel-street-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11.5, 0 ], [ 12, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "tunnel-street_limited-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street_limited" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11.5, 0 ], [ 12, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "tunnel-service-link-track-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
[
- "all",
- [ "in", "class", "link", "service", "track" ],
- [ "==", "structure", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
+ "==",
+ "class",
+ "grass"
]
],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 19%, 75%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-dasharray": [ 3, 3 ]
- }
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landcover"
},
{
- "id": "tunnel-street_limited-case",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-street_limited-low",
+ "id": "landuse_cemetery",
+ "type": "fill",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 19%, 75%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-dasharray": [ 3, 3 ],
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
+ "fill-color": "hsl(75, 37%, 81%)"
+ },
+ "filter": [
+ "==",
+ "class",
+ "cemetery"
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-street-case",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-street-low",
+ "id": "landuse_hospital",
+ "type": "fill",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 19%, 75%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-dasharray": [ 3, 3 ],
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
+ "fill-color": "rgba(249, 225, 220, 1)"
+ },
+ "filter": [
+ "==",
+ "class",
+ "hospital"
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-secondary-tertiary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ "id": "landuse_school",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgb(236,238,204)"
+ },
+ "filter": [
+ "==",
+ "class",
+ "school"
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
+ },
+ {
+ "id": "landuse_stadium",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgb(236,238,204)"
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "in", "class", "secondary", "tertiary" ], [ "==", "structure", "tunnel" ] ]
+ [
+ "in",
+ "class",
+ "stadium",
+ "pitch",
+ "track"
+ ]
],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.2, "stops": [ [ 10, 0.75 ], [ 18, 2 ] ] },
- "line-dasharray": [ 3, 3 ],
- "line-gap-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-color": "hsl(230, 19%, 75%)"
- }
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-primary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ "id": "landuse_garages",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(236, 236, 236, 1)"
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "primary" ], [ "==", "structure", "tunnel" ] ]
+ [
+ "in",
+ "class",
+ "garages"
+ ]
],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-dasharray": [ 3, 3 ],
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(230, 19%, 75%)"
- }
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-trunk_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
+ "id": "landuse_dam",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(209, 212, 190, 1)"
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "tunnel" ], [ "==", "type", "trunk_link" ] ]
+ [
+ "in",
+ "class",
+ "dam"
+ ]
],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-dasharray": [ 3, 3 ]
- }
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-motorway_link-case",
+ "id": "waterway_tunnel",
"type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "motorway_link" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-dasharray": [ 3, 3 ]
- }
- },
- {
- "id": "tunnel-trunk-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "tunnel" ], [ "==", "type", "trunk" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-opacity": 1,
- "line-dasharray": [ 3, 3 ]
- }
- },
- {
- "id": "tunnel-motorway-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "motorway" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-opacity": 1,
- "line-dasharray": [ 3, 3 ]
- }
- },
- {
- "id": "tunnel-construction",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "construction" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-join": "miter" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "line-dasharray": {
- "base": 1,
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.3,
"stops": [
- [ 14, [ 0.4, 0.8 ] ],
- [ 15, [ 0.3, 0.6 ] ],
- [ 16, [ 0.2, 0.3 ] ],
- [ 17, [ 0.2, 0.25 ] ],
- [ 18, [ 0.15, 0.15 ] ]
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 4
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 14,
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway_river",
+ "type": "line",
+ "paint": {
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 11,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
]
}
- }
- },
- {
- "id": "tunnel-path",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
[
- "all",
- [ "==", "class", "path" ],
- [ "==", "structure", "tunnel" ],
- [ "!=", "type", "steps" ]
+ "==",
+ "class",
+ "river"
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "intermittent",
+ 1
]
],
- "layout": { "line-join": "round" },
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway_river_intermittent",
+ "type": "line",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 18, 4 ] ] },
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 1, 0.5 ] ] ]
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 11,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
},
- "line-color": "hsl(35, 26%, 95%)",
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "tunnel-steps",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ "line-dasharray": [
+ 3,
+ 2
+ ]
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "tunnel" ], [ "==", "type", "steps" ] ]
+ [
+ "==",
+ "class",
+ "river"
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "==",
+ "intermittent",
+ 1
+ ]
],
- "layout": { "line-join": "round" },
+ "layout": {
+ "line-cap": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway_other",
+ "type": "line",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 16, 1.6 ], [ 18, 6 ] ] },
- "line-color": "hsl(35, 26%, 95%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 0.3, 0.3 ] ] ]
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.3,
+ "stops": [
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!=",
+ "class",
+ "river"
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "intermittent",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway_other_intermittent",
+ "type": "line",
+ "paint": {
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.3,
+ "stops": [
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
},
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
+ "line-dasharray": [
+ 4,
+ 3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!=",
+ "class",
+ "river"
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "==",
+ "intermittent",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "waterway"
},
{
- "id": "tunnel-trunk_link",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-trunk_link-case",
+ "id": "water_intermittent",
+ "type": "fill",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(46, 77%, 78%)",
- "line-opacity": 1,
- "line-dasharray": [ 1, 0 ]
- }
+ "fill-color": "rgba(172, 218, 251, 1)",
+ "fill-opacity": 0.85
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "intermittent",
+ 1
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "water"
},
{
- "id": "tunnel-motorway_link",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-motorway_link-case",
+ "id": "water",
+ "type": "fill",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(26, 100%, 78%)",
- "line-opacity": 1,
- "line-dasharray": [ 1, 0 ]
- }
+ "fill-color": "rgba(134, 204, 250, 1)"
+ },
+ "filter": [
+ "all",
+ [
+ "!=",
+ "intermittent",
+ 1
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "water"
},
{
- "id": "tunnel-pedestrian",
+ "id": "landcover_sand",
+ "type": "fill",
+ "paint": {
+ "fill-color": "#f2e9ac",
+ "fill-opacity": 1,
+ "fill-antialias": false
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "class",
+ "sand"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landcover"
+ },
+ {
+ "id": "landcover_sand_outline",
"type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
+ "paint": {
+ "line-color": "#f2e9ac",
+ "line-width": 2
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "pedestrian" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": { "base": 1, "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.5, 0.4 ] ], [ 16, [ 1, 0.2 ] ] ] }
- }
- },
- {
- "id": "tunnel-service-link-track",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-service-link-track-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": [ 1, 0 ]
- }
- },
- {
- "id": "tunnel-street_limited",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-street_limited-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(35, 14%, 93%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "tunnel-street",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-street-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "tunnel-secondary-tertiary",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-secondary-tertiary-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": [ 1, 0 ],
- "line-blur": 0
- }
- },
- {
- "id": "tunnel-primary",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-primary-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": [ 1, 0 ],
- "line-blur": 0
- }
- },
- {
- "id": "tunnel-oneway-arrows-blue-minor",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
[
- "all",
- [ "in", "class", "link", "path", "pedestrian", "service", "track" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
+ "in",
+ "class",
+ "sand"
]
],
"layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 17, "oneway-small" ], [ 18, "oneway-large" ] ] },
- "symbol-spacing": 200,
- "icon-padding": 2
+ "visibility": "visible"
},
- "paint": {}
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landcover"
},
{
- "id": "tunnel-oneway-arrows-blue-major",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
+ "id": "aeroway_fill",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(229, 228, 224, 1)",
+ "fill-opacity": 0.7
+ },
"filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "primary", "secondary", "street", "street_limited", "tertiary" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
- ]
+ "==",
+ "$type",
+ "Polygon"
],
"layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-small" ], [ 17, "oneway-large" ] ] },
- "symbol-spacing": 200,
- "icon-padding": 2
+ "visibility": "visible"
},
- "paint": {}
+ "source": "openmaptiles",
+ "minzoom": 11,
+ "metadata": {},
+ "source-layer": "aeroway"
},
{
- "id": "tunnel-trunk",
+ "id": "aeroway_runway",
"type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ "paint": {
+ "line-color": "#f0ede9",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 11,
+ 3
+ ],
+ [
+ 20,
+ 16
+ ]
+ ]
+ }
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "trunk" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(46, 77%, 78%)"
- }
- },
- {
- "id": "tunnel-motorway",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-motorway-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-opacity": 1,
- "line-color": "hsl(26, 100%, 78%)",
- "line-blur": 0
- }
- },
- {
- "id": "tunnel-oneway-arrows-white",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
[
- "all",
- [ "in", "class", "link", "motorway", "motorway_link", "trunk" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "tunnel" ],
- [ "!in", "type", "primary_link", "secondary_link", "tertiary_link" ]
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "class",
+ "runway"
]
],
"layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-white-small" ], [ 17, "oneway-white-large" ] ] },
- "symbol-spacing": 200,
- "icon-padding": 2
+ "visibility": "visible"
},
- "paint": {}
+ "source": "openmaptiles",
+ "minzoom": 11,
+ "metadata": {},
+ "source-layer": "aeroway"
+ },
+ {
+ "id": "aeroway_taxiway",
+ "type": "line",
+ "paint": {
+ "line-color": "#f0ede9",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 11,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "class",
+ "taxiway"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 11,
+ "metadata": {},
+ "source-layer": "aeroway"
},
{
"id": "ferry",
"type": "line",
- "source": "composite",
- "source-layer": "road",
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "type", "ferry" ] ],
- "layout": { "line-join": "round" },
"paint": {
- "line-color": { "base": 1, "stops": [ [ 15, "hsl(205, 73%, 63%)" ], [ 17, "hsl(230, 73%, 63%)" ] ] },
- "line-opacity": 1,
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] },
- "line-dasharray": { "base": 1, "stops": [ [ 12, [ 1, 0 ] ], [ 13, [ 12, 4 ] ] ] }
- }
- },
- {
- "id": "ferry_auto",
- "type": "line",
- "source": "composite",
- "source-layer": "road",
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "type", "ferry_auto" ] ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-color": { "base": 1, "stops": [ [ 15, "hsl(205, 73%, 63%)" ], [ 17, "hsl(230, 73%, 63%)" ] ] },
- "line-opacity": 1,
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "road-path-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "path" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!in", "type", "crossing", "sidewalk", "steps" ]
+ "line-color": "rgba(108, 159, 182, 1)",
+ "line-width": 1.1,
+ "line-dasharray": [
+ 2,
+ 2
]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 18, 7 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-color": "hsl(230, 17%, 82%)",
- "line-blur": 0,
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 0.75 ] ] }
- }
- },
- {
- "id": "road-steps-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "!in", "structure", "bridge", "tunnel" ], [ "==", "type", "steps" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 17, 4.6 ], [ 18, 7 ] ] },
- "line-color": "hsl(230, 17%, 82%)",
- "line-dasharray": [ 1, 0 ],
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 0.75 ] ] }
- }
- },
- {
- "id": "road-sidewalk-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "in", "type", "crossing", "sidewalk" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 18, 7 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-color": "hsl(230, 17%, 82%)",
- "line-blur": 0,
- "line-opacity": { "base": 1, "stops": [ [ 16, 0 ], [ 16.25, 0.75 ] ] }
- }
- },
- {
- "id": "turning-features-outline",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "in", "class", "turning_circle", "turning_loop" ] ],
- "layout": {
- "icon-image": "turning-circle-outline",
- "icon-size": { "base": 1.5, "stops": [ [ 14, 0.122 ], [ 18, 0.969 ], [ 20, 1 ] ] },
- "icon-allow-overlap": true,
- "icon-ignore-placement": true,
- "icon-padding": 0,
- "icon-rotation-alignment": "map"
},
- "paint": {}
- },
- {
- "id": "road-pedestrian-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 12,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "pedestrian" ], [ "==", "structure", "none" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 2 ], [ 18, 14.5 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": 0,
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-street-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street" ], [ "==", "structure", "none" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11, 0 ], [ 11.25, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "road-street_limited-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street_limited" ], [ "==", "structure", "none" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11, 0 ], [ 11.25, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "road-service-link-track-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "service", "track" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] }
- }
- },
- {
- "id": "road-street_limited-case",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-street_limited-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-street-case",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-street-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-secondary-tertiary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "secondary", "tertiary" ],
- [ "!in", "structure", "bridge", "tunnel" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.2, "stops": [ [ 10, 0.75 ], [ 18, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 9.99, 0 ], [ 10, 1 ] ] }
- }
- },
- {
- "id": "road-primary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "primary" ], [ "!in", "structure", "bridge", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 9.99, 0 ], [ 10, 1 ] ] }
- }
- },
- {
- "id": "road-motorway_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 10,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "motorway_link" ], [ "!in", "structure", "bridge", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 10.99, 0 ], [ 11, 1 ] ] }
- }
- },
- {
- "id": "road-trunk_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "!in", "structure", "bridge", "tunnel" ], [ "==", "type", "trunk_link" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 10.99, 0 ], [ 11, 1 ] ] }
- }
- },
- {
- "id": "road-trunk-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "trunk" ], [ "!in", "structure", "bridge", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 6, 0 ], [ 6.1, 1 ] ] }
- }
- },
- {
- "id": "road-motorway-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "motorway" ], [ "!in", "structure", "bridge", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "road-construction",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "construction" ], [ "==", "structure", "none" ] ]
- ],
- "layout": { "line-join": "miter" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "line-dasharray": {
- "base": 1,
- "stops": [
- [ 14, [ 0.4, 0.8 ] ],
- [ 15, [ 0.3, 0.6 ] ],
- [ 16, [ 0.2, 0.3 ] ],
- [ 17, [ 0.2, 0.25 ] ],
- [ 18, [ 0.15, 0.15 ] ]
- ]
- }
- }
- },
- {
- "id": "road-sidewalks",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-sidewalk-bg",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 18, 4 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 1, 0.5 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 16, 0 ], [ 16.25, 1 ] ] }
- }
- },
- {
- "id": "road-path",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-path-bg",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 18, 4 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 1, 0.5 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "road-steps",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-steps-bg",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 16, 1.6 ], [ 18, 6 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 0.3, 0.3 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "road-trunk_link",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-trunk_link-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(46, 85%, 67%)",
- "line-opacity": 1
- }
- },
- {
- "id": "road-motorway_link",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-motorway_link-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(26, 100%, 68%)",
- "line-opacity": 1
- }
- },
- {
- "id": "road-pedestrian",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-pedestrian-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": { "base": 1, "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.5, 0.4 ] ], [ 16, [ 1, 0.2 ] ] ] }
- }
- },
- {
- "id": "road-pedestrian-polygon-fill",
- "type": "fill",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 12,
- "filter": [
- "all",
- [ "==", "$type", "Polygon" ],
- [ "all", [ "in", "class", "path", "pedestrian" ], [ "==", "structure", "none" ] ]
- ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 16, "hsl(230, 16%, 94%)" ], [ 16.25, "hsl(230, 50%, 98%)" ] ] },
- "fill-outline-color": "hsl(230, 26%, 88%)",
- "fill-opacity": 1
- }
- },
- {
- "id": "road-pedestrian-polygon-pattern",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-pedestrian-polygon-fill",
- "paint": {
- "fill-color": "hsl(0, 0%, 100%)",
- "fill-outline-color": "hsl(35, 10%, 83%)",
- "fill-pattern": "pedestrian-polygon",
- "fill-opacity": { "base": 1, "stops": [ [ 16, 0 ], [ 16.25, 1 ] ] }
- }
- },
- {
- "id": "road-polygon",
- "type": "fill",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 12,
- "filter": [
- "all",
- [ "==", "$type", "Polygon" ],
- [
- "all",
- [ "!in", "class", "motorway", "path", "pedestrian", "trunk" ],
- [ "!in", "structure", "bridge", "tunnel" ]
- ]
- ],
- "layout": {},
- "paint": { "fill-color": "hsl(0, 0%, 100%)", "fill-outline-color": "#d6d9e6" }
- },
- {
- "id": "road-service-link-track",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-service-link-track-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)"
- }
- },
- {
- "id": "road-street_limited",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-street_limited-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(35, 14%, 93%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-street",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-street-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-secondary-tertiary",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-secondary-tertiary-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-color": { "base": 1, "stops": [ [ 5, "hsl(35, 32%, 91%)" ], [ 8, "hsl(0, 0%, 100%)" ] ] },
- "line-opacity": { "base": 1.2, "stops": [ [ 5, 0 ], [ 5.5, 1 ] ] }
- }
- },
- {
- "id": "road-primary",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-primary-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": { "base": 1, "stops": [ [ 5, "hsl(35, 32%, 91%)" ], [ 7, "hsl(0, 0%, 100%)" ] ] },
- "line-opacity": 1
- }
- },
- {
- "id": "road-oneway-arrows-blue-minor",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "path", "pedestrian", "service", "track" ],
- [ "==", "oneway", "true" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 17, "oneway-small" ], [ 18, "oneway-large" ] ] },
- "icon-rotation-alignment": "map",
- "icon-padding": 2,
- "symbol-spacing": 200
- },
- "paint": {}
- },
- {
- "id": "road-oneway-arrows-blue-major",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "primary", "secondary", "street", "street_limited", "tertiary" ],
- [ "==", "oneway", "true" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-small" ], [ 17, "oneway-large" ] ] },
- "icon-rotation-alignment": "map",
- "icon-padding": 2,
- "symbol-spacing": 200
- },
- "paint": {}
- },
- {
- "id": "road-trunk",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-trunk-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": {
- "base": 1,
- "stops": [ [ 6, "hsl(0, 0%, 100%)" ], [ 6.1, "hsl(46, 80%, 60%)" ], [ 9, "hsl(46, 85%, 67%)" ] ]
- }
- }
- },
- {
- "id": "road-motorway",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-motorway-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": { "base": 1, "stops": [ [ 8, "hsl(26, 87%, 62%)" ], [ 9, "hsl(26, 100%, 68%)" ] ] }
- }
- },
- {
- "id": "road-rail",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "major_rail", "minor_rail" ],
- [ "!in", "structure", "bridge", "tunnel" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-color": { "stops": [ [ 13, "hsl(50, 17%, 82%)" ], [ 16, "hsl(230, 10%, 74%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "road-rail-tracks",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-rail",
- "paint": {
- "line-color": { "stops": [ [ 13, "hsl(50, 17%, 82%)" ], [ 16, "hsl(230, 10%, 74%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 14, 4 ], [ 20, 8 ] ] },
- "line-dasharray": [ 0.1, 15 ],
- "line-opacity": { "base": 1, "stops": [ [ 13.75, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "level-crossings",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "==", "class", "level_crossing" ] ],
- "layout": { "icon-size": 1, "icon-image": "level-crossing", "icon-allow-overlap": true },
- "paint": {}
- },
- {
- "id": "road-oneway-arrows-white",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "motorway", "motorway_link", "trunk" ],
- [ "==", "oneway", "true" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!in", "type", "primary_link", "secondary_link", "tertiary_link" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-white-small" ], [ 17, "oneway-white-large" ] ] },
- "icon-padding": 2,
- "symbol-spacing": 200
- },
- "paint": {}
- },
- {
- "id": "turning-features",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "in", "class", "turning_circle", "turning_loop" ] ],
- "layout": {
- "icon-image": "turning-circle",
- "icon-size": { "base": 1.5, "stops": [ [ 14, 0.095 ], [ 18, 1 ] ] },
- "icon-allow-overlap": true,
- "icon-ignore-placement": true,
- "icon-padding": 0,
- "icon-rotation-alignment": "map"
- },
- "paint": {}
- },
- {
- "id": "bridge-path-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "path" ],
- [ "==", "structure", "bridge" ],
- [ "!=", "type", "steps" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 18, 7 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-color": "hsl(230, 17%, 82%)",
- "line-blur": 0,
- "line-opacity": { "base": 1, "stops": [ [ 15, 0 ], [ 15.25, 1 ] ] }
- }
- },
- {
- "id": "bridge-steps-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "bridge" ], [ "==", "type", "steps" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 17, 4.6 ], [ 18, 7 ] ] },
- "line-color": "hsl(230, 17%, 82%)",
- "line-dasharray": [ 1, 0 ],
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 0.75 ] ] }
- }
- },
- {
- "id": "bridge-pedestrian-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "pedestrian" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 2 ], [ 18, 14.5 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": 0,
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "bridge-street-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11.5, 0 ], [ 12, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "bridge-street_limited-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street_limited" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11.5, 0 ], [ 12, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "bridge-service-link-track-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "service", "track" ],
- [ "==", "structure", "bridge" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] }
- }
- },
- {
- "id": "bridge-street_limited-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street_limited" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] }
- }
- },
- {
- "id": "bridge-street-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] }
- }
- },
- {
- "id": "bridge-secondary-tertiary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "in", "class", "secondary", "tertiary" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.2, "stops": [ [ 10, 0.75 ], [ 18, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-translate": [ 0, 0 ]
- }
- },
- {
- "id": "bridge-primary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "primary" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-translate": [ 0, 0 ]
- }
- },
- {
- "id": "bridge-trunk_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ],
- [ "==", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 10.99, 0 ], [ 11, 1 ] ] }
- }
- },
- {
- "id": "bridge-motorway_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway_link" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": 1
- }
- },
- {
- "id": "bridge-trunk-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "trunk" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "bridge-motorway-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "bridge-construction",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "construction" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "miter" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "line-dasharray": {
- "base": 1,
- "stops": [
- [ 14, [ 0.4, 0.8 ] ],
- [ 15, [ 0.3, 0.6 ] ],
- [ 16, [ 0.2, 0.3 ] ],
- [ 17, [ 0.2, 0.25 ] ],
- [ 18, [ 0.15, 0.15 ] ]
- ]
- }
- }
- },
- {
- "id": "bridge-path",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "path" ],
- [ "==", "structure", "bridge" ],
- [ "!=", "type", "steps" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 18, 4 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 1, 0.5 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "bridge-steps",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-steps-bg",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 16, 1.6 ], [ 18, 6 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 0.3, 0.3 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "bridge-trunk_link",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ],
- [ "==", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(46, 85%, 67%)"
- }
- },
- {
- "id": "bridge-motorway_link",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway_link" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(26, 100%, 68%)"
- }
- },
- {
- "id": "bridge-pedestrian",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-pedestrian-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": { "base": 1, "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.5, 0.4 ] ], [ 16, [ 1, 0.2 ] ] ] }
- }
- },
- {
- "id": "bridge-service-link-track",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "service", "track" ],
- [ "==", "structure", "bridge" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)"
- }
- },
- {
- "id": "bridge-street_limited",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-street_limited-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(35, 14%, 93%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "bridge-street",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-street-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "bridge-secondary-tertiary",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "bridge" ], [ "in", "type", "secondary", "tertiary" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "base": 1.2, "stops": [ [ 5, 0 ], [ 5.5, 1 ] ] }
- }
- },
- {
- "id": "bridge-primary",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "bridge" ], [ "==", "type", "primary" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1
- }
- },
- {
- "id": "bridge-oneway-arrows-blue-minor",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "path", "pedestrian", "service", "track" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 17, "oneway-small" ], [ 18, "oneway-large" ] ] },
- "symbol-spacing": 200,
- "icon-rotation-alignment": "map",
- "icon-padding": 2
- },
- "paint": {}
- },
- {
- "id": "bridge-oneway-arrows-blue-major",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "primary", "secondary", "street", "street_limited", "tertiary" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-small" ], [ 17, "oneway-large" ] ] },
- "symbol-spacing": 200,
- "icon-rotation-alignment": "map",
- "icon-padding": 2
- },
- "paint": {}
- },
- {
- "id": "bridge-trunk",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "trunk" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(46, 85%, 67%)"
- }
- },
- {
- "id": "bridge-motorway",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(26, 100%, 68%)"
- }
- },
- {
- "id": "bridge-rail",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "in", "class", "major_rail", "minor_rail" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-color": { "stops": [ [ 13, "hsl(50, 17%, 82%)" ], [ 16, "hsl(230, 10%, 74%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "bridge-rail-tracks",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-rail",
- "paint": {
- "line-color": { "stops": [ [ 13, "hsl(50, 17%, 82%)" ], [ 16, "hsl(230, 10%, 74%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 14, 4 ], [ 20, 8 ] ] },
- "line-dasharray": [ 0.1, 15 ],
- "line-opacity": { "base": 1, "stops": [ [ 13.75, 0 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "bridge-trunk_link-2-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ],
- [ "==", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 10.99, 0 ], [ 11, 1 ] ] }
- }
- },
- {
- "id": "bridge-motorway_link-2-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway_link" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": 1
- }
- },
- {
- "id": "bridge-trunk-2-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "trunk" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "bridge-motorway-2-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "bridge-trunk_link-2",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ],
- [ "==", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(46, 85%, 67%)"
- }
- },
- {
- "id": "bridge-motorway_link-2",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway_link" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(26, 100%, 68%)"
- }
- },
- {
- "id": "bridge-trunk-2",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "trunk" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(46, 85%, 67%)"
- }
- },
- {
- "id": "bridge-motorway-2",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(26, 100%, 68%)"
- }
- },
- {
- "id": "bridge-oneway-arrows-white",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "motorway", "motorway_link", "trunk" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "bridge" ],
- [ "!in", "type", "primary_link", "secondary_link", "tertiary_link" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-white-small" ], [ 17, "oneway-white-large" ] ] },
- "symbol-spacing": 200,
- "icon-padding": 2
- },
- "paint": {}
- },
- {
- "id": "aerialway",
- "type": "line",
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "class", "aerialway" ] ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-color": "hsl(230, 10%, 74%)",
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "admin-3-4-boundaries-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "filter": [ "all", [ ">=", "admin_level", 3 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "bevel" },
- "paint": {
- "line-color": { "base": 1, "stops": [ [ 8, "hsl(35, 12%, 89%)" ], [ 16, "hsl(230, 49%, 90%)" ] ] },
- "line-width": { "base": 1, "stops": [ [ 7, 3.75 ], [ 12, 5.5 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 7, 0 ], [ 8, 0.75 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-translate": [ 0, 0 ],
- "line-blur": { "base": 1, "stops": [ [ 3, 0 ], [ 8, 3 ] ] }
- }
- },
- {
- "id": "admin-2-boundaries-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "minzoom": 1,
- "filter": [ "all", [ "==", "admin_level", 2 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "miter" },
- "paint": {
- "line-width": { "base": 1, "stops": [ [ 3, 3.5 ], [ 10, 8 ] ] },
- "line-color": { "base": 1, "stops": [ [ 6, "hsl(35, 12%, 89%)" ], [ 8, "hsl(230, 49%, 90%)" ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 3, 0 ], [ 4, 0.5 ] ] },
- "line-translate": [ 0, 0 ],
- "line-blur": { "base": 1, "stops": [ [ 3, 0 ], [ 10, 2 ] ] }
- }
- },
- {
- "id": "admin-3-4-boundaries",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "filter": [ "all", [ ">=", "admin_level", 3 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "round", "line-cap": "round" },
- "paint": {
- "line-dasharray": { "base": 1, "stops": [ [ 6, [ 2, 0 ] ], [ 7, [ 2, 2, 6, 2 ] ] ] },
- "line-width": { "base": 1, "stops": [ [ 7, 0.75 ], [ 12, 1.5 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 2, 0 ], [ 3, 1 ] ] },
- "line-color": { "base": 1, "stops": [ [ 3, "hsl(230, 14%, 77%)" ], [ 7, "hsl(230, 8%, 62%)" ] ] }
- }
- },
- {
- "id": "admin-2-boundaries",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "minzoom": 1,
- "filter": [ "all", [ "==", "admin_level", 2 ], [ "==", "disputed", 0 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "round", "line-cap": "round" },
- "paint": {
- "line-color": "hsl(230, 8%, 51%)",
- "line-width": { "base": 1, "stops": [ [ 3, 0.5 ], [ 10, 2 ] ] }
- }
- },
- {
- "id": "admin-2-boundaries-dispute",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "minzoom": 1,
- "filter": [ "all", [ "==", "admin_level", 2 ], [ "==", "disputed", 1 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-dasharray": [ 1.5, 1.5 ],
- "line-color": "hsl(230, 8%, 51%)",
- "line-width": { "base": 1, "stops": [ [ 3, 0.5 ], [ 10, 2 ] ] }
- }
- },
- {
- "id": "housenum-label",
- "type": "symbol",
- "source": "composite",
- "source-layer": "housenum_label",
- "minzoom": 17,
- "layout": {
- "text-field": "{house_num}",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-padding": 4,
- "text-max-width": 7,
- "text-size": 9.5
- },
- "paint": {
- "text-color": "hsl(35, 2%, 69%)",
- "text-halo-color": "hsl(35, 8%, 85%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0
- }
- },
- {
- "id": "waterway-label",
- "type": "symbol",
- "source": "composite",
- "source-layer": "waterway_label",
- "minzoom": 12,
- "filter": [ "in", "class", "canal", "river" ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-max-angle": 30,
- "text-size": { "base": 1, "stops": [ [ 13, 12 ], [ 18, 16 ] ] }
- },
- "paint": {
- "text-halo-width": 0.5,
- "text-halo-color": "hsl(196, 80%, 70%)",
- "text-color": "hsl(230, 48%, 44%)",
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-scalerank4-l15",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933456003.5437" },
- "source": "composite",
- "source-layer": "poi_label",
- "minzoom": 17,
- "filter": [
- "all",
- [ ">=", "localrank", 15 ],
- [
- "!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 4 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-scalerank4-l1",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933456003.5437" },
- "source": "composite",
- "source-layer": "poi_label",
- "minzoom": 15,
- "filter": [
- "all",
- [ "<=", "localrank", 14 ],
- [
- "!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 4 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 1,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-parks_scalerank4",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933456003.5437" },
- "source": "composite",
- "source-layer": "poi_label",
- "minzoom": 15,
"filter": [
"all",
[
"in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 4 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 1,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(100, 100%, 20%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-scalerank3",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933372896.5967" },
- "source": "composite",
- "source-layer": "poi_label",
- "filter": [
- "all",
- [
- "!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 3 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 1,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-parks-scalerank3",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933372896.5967" },
- "source": "composite",
- "source-layer": "poi_label",
- "filter": [
- "all",
- [
- "in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 3 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(100, 100%, 20%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "road-label-small",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933721429.3076" },
- "source": "composite",
- "source-layer": "road_label",
- "minzoom": 15,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "!in",
"class",
- "link",
- "motorway",
- "pedestrian",
- "primary",
- "secondary",
+ "ferry"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_motorway_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_service_track_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15,
+ 1
+ ],
+ [
+ 16,
+ 4
+ ],
+ [
+ 20,
+ 11
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "ramp",
+ "1"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ ">",
+ "layer",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_street_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 0.5
+ ],
+ [
+ 13,
+ 1
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": {
+ "stops": [
+ [
+ 12,
+ 0
+ ],
+ [
+ 12.5,
+ 1
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
"street",
- "street_limited",
- "tertiary",
+ "street_limited"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_secondary_tertiary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(195, 189, 187, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 8,
+ 1.5
+ ],
+ [
+ 20,
+ 17
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_trunk_primary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "primary",
"trunk"
]
],
"layout": {
- "text-size": { "base": 1, "stops": [ [ 15, 10 ], [ 20, 13 ] ] },
- "text-max-angle": 30,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-padding": 1,
- "text-rotation-alignment": "map",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "text-halo-blur": 1
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "road-label-medium",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933721429.3076" },
- "source": "composite",
- "source-layer": "road_label",
- "minzoom": 11,
+ "id": "tunnel_motorway_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "in", "class", "link", "pedestrian", "street", "street_limited" ]
- ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 11, 10 ], [ 20, 14 ] ] },
- "text-max-angle": 30,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-padding": 1,
- "text-rotation-alignment": "map",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
- },
- {
- "id": "road-label-large",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933721429.3076" },
- "source": "composite",
- "source-layer": "road_label",
- "filter": [ "in", "class", "motorway", "primary", "secondary", "tertiary", "trunk" ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 9, 10 ], [ 20, 16 ] ] },
- "text-max-angle": 30,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-padding": 1,
- "text-rotation-alignment": "map",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsla(0, 0%, 100%, 0.75)",
- "text-halo-width": 1,
- "text-halo-blur": 1
- }
- },
- {
- "id": "road-shields-black",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933575858.6992" },
- "source": "composite",
- "source-layer": "road_label",
- "filter": [
- "all",
- [ "<=", "reflen", 6 ],
[
- "!in",
- "shield",
- "at-expressway",
- "at-motorway",
- "at-state-b",
- "bg-motorway",
- "bg-national",
- "ch-main",
- "ch-motorway",
- "cz-motorway",
- "cz-road",
- "de-motorway",
- "e-road",
- "fi-main",
- "gr-motorway",
- "gr-national",
- "hr-motorway",
- "hr-state",
- "hu-main",
- "hu-motorway",
- "nz-state",
- "pl-expressway",
- "pl-motorway",
- "pl-national",
- "ro-county",
- "ro-motorway",
- "ro-national",
- "rs-motorway",
- "rs-state-1b",
- "se-main",
- "si-expressway",
- "si-motorway",
- "sk-highway",
- "sk-road",
- "us-interstate",
- "us-interstate-business",
- "us-interstate-duplex",
- "us-interstate-truck",
- "za-metropolitan",
- "za-national",
- "za-provincial",
- "za-regional"
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
]
],
"layout": {
- "text-size": 9,
- "icon-image": "{shield}-{reflen}",
- "icon-rotation-alignment": "viewport",
- "text-max-angle": 38,
- "symbol-spacing": { "base": 1, "stops": [ [ 11, 150 ], [ 14, 200 ] ] },
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "symbol-placement": { "base": 1, "stops": [ [ 10, "point" ], [ 11, "line" ] ] },
- "text-padding": 2,
- "text-rotation-alignment": "viewport",
- "text-field": "{ref}",
- "text-letter-spacing": 0.05,
- "icon-padding": 2
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(0, 0%, 7%)",
- "icon-halo-color": "rgba(0, 0, 0, 1)",
- "icon-halo-width": 1,
- "text-opacity": 1,
- "icon-color": "white",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "road-shields-white",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933575858.6992" },
- "source": "composite",
- "source-layer": "road_label",
+ "id": "tunnel_path_pedestrian",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(204, 196, 176, 0.45)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 14,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 1,
+ 0.75
+ ]
+ },
"filter": [
"all",
- [ "<=", "reflen", 6 ],
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
[
"in",
- "shield",
- "at-expressway",
- "at-motorway",
- "at-state-b",
- "bg-motorway",
- "bg-national",
- "ch-main",
- "ch-motorway",
- "cz-motorway",
- "cz-road",
- "de-motorway",
- "e-road",
- "fi-main",
- "gr-motorway",
- "gr-national",
- "hr-motorway",
- "hr-state",
- "hu-main",
- "hu-motorway",
- "nz-state",
- "pl-expressway",
- "pl-motorway",
- "pl-national",
- "ro-county",
- "ro-motorway",
- "ro-national",
- "rs-motorway",
- "rs-state-1b",
- "se-main",
- "si-expressway",
- "si-motorway",
- "sk-highway",
- "sk-road",
- "us-interstate",
- "us-interstate-business",
- "us-interstate-duplex",
- "us-interstate-truck",
- "za-metropolitan",
- "za-national",
- "za-provincial",
- "za-regional"
+ "class",
+ "path",
+ "pedestrian"
]
],
"layout": {
- "text-size": 9,
- "icon-image": "{shield}-{reflen}",
- "icon-rotation-alignment": "viewport",
- "text-max-angle": 38,
- "symbol-spacing": { "base": 1, "stops": [ [ 11, 150 ], [ 14, 200 ] ] },
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "symbol-placement": { "base": 1, "stops": [ [ 10, "point" ], [ 11, "line" ] ] },
- "text-padding": 2,
- "text-rotation-alignment": "viewport",
- "text-field": "{ref}",
- "text-letter-spacing": 0.05,
- "icon-padding": 2
+ "visibility": "visible"
},
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_motorway_link",
+ "type": "line",
"paint": {
- "text-color": "hsl(0, 0%, 100%)",
- "icon-halo-color": "rgba(0, 0, 0, 1)",
- "icon-halo-width": 1,
- "text-opacity": 1,
- "icon-color": "white",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0
- }
- },
- {
- "id": "motorway-junction",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933575858.6992" },
- "source": "composite",
- "source-layer": "motorway_junction",
- "minzoom": 14,
- "filter": [ "all", [ ">", "reflen", 0 ], [ "<=", "reflen", 9 ] ],
- "layout": {
- "text-field": "{ref}",
- "text-size": 9,
- "icon-image": "motorway-exit-{reflen}",
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ]
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
},
- "paint": { "text-color": "hsl(0, 0%, 100%)", "text-translate": [ 0, 0 ] }
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway_link"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "poi-scalerank2",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933358918.2366" },
- "source": "composite",
- "source-layer": "poi_label",
+ "id": "tunnel_service_track",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_service_track_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service_construction",
+ "track_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff4c6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "ramp",
+ "1"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ ">",
+ "layer",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_minor",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_minor_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_secondary_tertiary",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(245, 245, 243, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_secondary_tertiary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary_construction",
+ "tertiary_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_trunk_primary",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff4c6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_trunk_primary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff4c6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "primary_construction",
+ "trunk_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_motorway",
+ "type": "line",
+ "paint": {
+ "line-color": "#ffdaa6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_motorway_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#ffdaa6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway_construction"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_major_rail",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14,
+ 0.4
+ ],
+ [
+ 15,
+ 0.75
+ ],
+ [
+ 20,
+ 2
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "rail"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_major_rail_hatching",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14.5,
+ 0
+ ],
+ [
+ 15,
+ 3
+ ],
+ [
+ 20,
+ 8
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.2,
+ 8
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "rail"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_area_pier",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(246, 241, 229, 1)",
+ "fill-antialias": true
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Polygon"
+ ],
+ [
+ "==",
+ "class",
+ "pier"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_pier",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(246, 241, 229, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15,
+ 1
+ ],
+ [
+ 17,
+ 4
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "in",
+ "class",
+ "pier"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_area_bridge",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(246, 241, 229, 0.6)",
+ "fill-antialias": true
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Polygon"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_area_pattern",
+ "type": "fill",
+ "paint": {
+ "fill-pattern": "pedestrian_polygon"
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Polygon"
+ ],
+ [
+ "!has",
+ "brunnel"
+ ],
+ [
+ "!in",
+ "class",
+ "bridge",
+ "pier"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_service_track_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15,
+ 1
+ ],
+ [
+ 16,
+ 4
+ ],
+ [
+ 20,
+ 11
+ ]
+ ]
+ }
+ },
"filter": [
"all",
[
"!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
+ "brunnel",
+ "bridge",
+ "tunnel"
],
- [ "==", "scalerank", 2 ]
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 14, 11 ], [ 20, 14 ] ] },
- "icon-image": { "stops": [ [ 14, "{maki}-11" ], [ 15, "{maki}-15" ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
+ "line-cap": "round",
+ "line-join": "round"
},
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "poi-parks-scalerank2",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933358918.2366" },
- "source": "composite",
- "source-layer": "poi_label",
+ "id": "road_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
"filter": [
"all",
[
- "in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
],
- [ "==", "scalerank", 2 ]
+ [
+ "!in",
+ "class",
+ "motorway",
+ "trunk",
+ "primary",
+ "pedestrian",
+ "path",
+ "track",
+ "service"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ]
],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 14, 11 ], [ 20, 14 ] ] },
- "icon-image": { "stops": [ [ 14, "{maki}-11" ], [ 15, "{maki}-15" ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(100, 100%, 20%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "minzoom": 13,
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "rail-label",
- "type": "symbol",
- "source": "composite",
- "source-layer": "rail_station_label",
+ "id": "road_trunk_primary_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 0.7
+ ],
+ [
+ 20,
+ 14
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-cap": "butt",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "butt",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
"minzoom": 12,
- "filter": [ "!=", "maki", "entrance" ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{network}",
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-offset": [ 0, 0.85 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": { "base": 1, "stops": [ [ 0, "" ], [ 13, "{name_en}" ] ] },
- "text-letter-spacing": 0.01,
- "icon-padding": 0,
- "text-max-width": 7
- },
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor_casing",
+ "type": "line",
"paint": {
- "text-color": "hsl(230, 48%, 44%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "icon-halo-width": 4,
- "icon-halo-color": "#fff",
- "text-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "water-label-sm",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933808272.805" },
- "source": "composite",
- "source-layer": "water_label",
- "minzoom": 15,
- "filter": [ "<=", "area", 10000 ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-max-width": 7,
- "text-size": { "base": 1, "stops": [ [ 16, 13 ], [ 20, 16 ] ] }
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 0.5
+ ],
+ [
+ 13,
+ 1
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 20
+ ]
+ ]
+ },
+ "line-opacity": {
+ "stops": [
+ [
+ 12,
+ 0
+ ],
+ [
+ 12.5,
+ 1
+ ]
+ ]
+ }
},
- "paint": { "text-color": "hsl(230, 48%, 44%)" }
- },
- {
- "id": "water-label",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933808272.805" },
- "source": "composite",
- "source-layer": "water_label",
- "minzoom": 5,
- "filter": [ ">", "area", 10000 ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-max-width": 7,
- "text-size": { "base": 1, "stops": [ [ 13, 13 ], [ 18, 18 ] ] }
- },
- "paint": { "text-color": "hsl(230, 48%, 44%)" }
- },
- {
- "id": "place-residential",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 18,
- "filter": [
- "all",
- [ "in", "$type", "LineString", "Point", "Polygon" ],
- [ "all", [ "<=", "localrank", 10 ], [ "==", "type", "residential" ] ]
- ],
- "layout": {
- "text-line-height": 1.2,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 14 ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0 ],
- "text-rotation-alignment": "viewport",
- "text-field": "{name_en}",
- "text-max-width": 7
- },
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-parks-scalerank1",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933322393.2852" },
- "source": "composite",
- "source-layer": "poi_label",
"filter": [
"all",
[
- "in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
+ "==",
+ "$type",
+ "LineString"
],
- [ "<=", "scalerank", 1 ]
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor"
+ ],
+ [
+ "!=",
+ "ramp",
+ "1"
+ ]
],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 14 ] ] },
- "icon-image": { "stops": [ [ 13, "{maki}-11" ], [ 14, "{maki}-15" ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(100, 100%, 20%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "poi-scalerank1",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933322393.2852" },
- "source": "composite",
- "source-layer": "poi_label",
+ "id": "road_secondary_tertiary_casing-copy",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(195, 189, 187, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 8,
+ 1.5
+ ],
+ [
+ 20,
+ 17
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
"filter": [
"all",
[
"!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
+ "brunnel",
+ "bridge",
+ "tunnel"
],
- [ "<=", "scalerank", 1 ]
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 14 ] ] },
- "icon-image": { "stops": [ [ 13, "{maki}-11" ], [ 14, "{maki}-15" ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "airport-label",
- "type": "symbol",
- "source": "composite",
- "source-layer": "airport_label",
- "minzoom": 9,
- "filter": [ "<=", "scalerank", 2 ],
+ "id": "road_trunk_primary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 10, 12 ], [ 18, 18 ] ] },
- "icon-image": { "stops": [ [ 12, "{maki}-11" ], [ 13, "{maki}-15" ] ] },
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.75 ],
- "text-rotation-alignment": "viewport",
+ "line-cap": "butt",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "butt",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_path_pedestrian",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(204, 196, 176, 0.45)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 14,
+ 1
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 1,
+ 1
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "path",
+ "pedestrian"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 14,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "!in",
+ "class",
+ "motorway",
+ "trunk",
+ "primary",
+ "pedestrian",
+ "path",
+ "track",
+ "service"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 13,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_trunk_primary_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 0.5
+ ],
+ [
+ 20,
+ 10
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 12,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_service_track",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_service_track_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service_construction",
+ "track_construction"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor"
+ ]
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor_construction"
+ ]
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_secondary_tertiary",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(245, 245, 243, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_secondary_tertiary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary_construction",
+ "tertiary_construction"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_trunk_primary",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_trunk_primary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary_construction",
+ "trunk_construction"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway",
+ "type": "line",
+ "paint": {
+ "line-color": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ "hsl(26, 87%, 62%)"
+ ],
+ [
+ 6,
+ "#fc8"
+ ]
+ ]
+ },
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway_construction",
+ "type": "line",
+ "paint": {
+ "line-color": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ "hsl(26, 87%, 62%)"
+ ],
+ [
+ 6,
+ "#fc8"
+ ]
+ ]
+ },
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway_construction"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_major_rail",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14,
+ 0.4
+ ],
+ [
+ 15,
+ 0.75
+ ],
+ [
+ 20,
+ 2
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "rail"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_major_rail_hatching",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14.5,
+ 0
+ ],
+ [
+ 15,
+ 3
+ ],
+ [
+ 20,
+ 8
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.2,
+ 8
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "rail"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor_rail",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14,
+ 0.4
+ ],
+ [
+ 15,
+ 0.75
+ ],
+ [
+ 20,
+ 2
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "subclass",
+ "tram",
+ "light_rail"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor_rail_hatching",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14.5,
+ 0
+ ],
+ [
+ 15,
+ 2
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.2,
+ 4
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "subclass",
+ "tram",
+ "light_rail"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "building",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(189, 185, 181, 0.3)",
+ "fill-outline-color": {
+ "base": 1,
+ "stops": [
+ [
+ 13,
+ "hsla(35, 6%, 79%, 0.32)"
+ ],
+ [
+ 14,
+ "hsl(35, 6%, 79%)"
+ ]
+ ]
+ }
+ },
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 14,
+ "minzoom": 13,
+ "metadata": {},
+ "source-layer": "building"
+ },
+ {
+ "id": "building-3d",
+ "type": "fill-extrusion",
+ "paint": {
+ "fill-extrusion-base": {
+ "type": "identity",
+ "property": "render_min_height"
+ },
+ "fill-extrusion-color": "rgba(189, 185, 181, 1)",
+ "fill-extrusion-height": {
+ "type": "identity",
+ "property": "render_height"
+ },
+ "fill-extrusion-opacity": 0.3
+ },
+ "filter": [
+ "all",
+ [
+ "!has",
+ "hide_3d"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 14,
+ "metadata": {},
+ "source-layer": "building"
+ },
+ {
+ "id": "waterway-bridge-case",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbbbbb",
+ "line-width": {
+ "base": 1.6,
+ "stops": [
+ [
+ 12,
+ 0.5
+ ],
+ [
+ 20,
+ 5
+ ]
+ ]
+ },
+ "line-gap-width": {
+ "base": 1.3,
+ "stops": [
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-cap": "butt",
+ "line-join": "miter"
+ },
+ "source": "openmaptiles",
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway-bridge",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(134, 204, 250, 1)",
+ "line-width": {
+ "base": 1.3,
+ "stops": [
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "source-layer": "waterway"
+ },
+ {
+ "id": "bridge_motorway_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_service_track_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15,
+ 1
+ ],
+ [
+ 16,
+ 4
+ ],
+ [
+ 20,
+ 11
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "link"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_street_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(36, 6%, 74%)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 0.5
+ ],
+ [
+ 13,
+ 1
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 25
+ ]
+ ]
+ },
+ "line-opacity": {
+ "stops": [
+ [
+ 12,
+ 0
+ ],
+ [
+ 12.5,
+ 1
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "street",
+ "street_limited"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_path_pedestrian_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(35, 6%, 80%)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 14,
+ 1.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 1,
+ 0
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "path",
+ "pedestrian"
+ ]
+ ],
+ "layout": {
+ "line-join": "miter",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_secondary_tertiary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(195, 189, 187, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 8,
+ 1.5
+ ],
+ [
+ 20,
+ 17
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_trunk_primary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_motorway_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_path_pedestrian",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(0, 0%, 100%)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 14,
+ 0.5
+ ],
+ [
+ 20,
+ 10
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 1,
+ 0.3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "path",
+ "pedestrian"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_motorway_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_service_track",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_service_track_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "service_construction",
+ "track_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "link"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_minor",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "minor"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_minor_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "minor_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_secondary_tertiary",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(245, 245, 243, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_secondary_tertiary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "secondary_construction",
+ "tertiary_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_trunk_primary",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_trunk_primary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "primary_construction",
+ "trunk_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_motorway",
+ "type": "line",
+ "paint": {
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_motorway_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway_construction"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_major_rail",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14,
+ 0.4
+ ],
+ [
+ 15,
+ 0.75
+ ],
+ [
+ 20,
+ 2
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "rail"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_major_rail_hatching",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14.5,
+ 0
+ ],
+ [
+ 15,
+ 3
+ ],
+ [
+ 20,
+ 8
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.2,
+ 8
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "rail"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "cablecar",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(0, 0%, 70%)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 11,
+ 1
+ ],
+ [
+ 19,
+ 2.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "==",
+ "class",
+ "aerialway"
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 13,
+ "source-layer": "transportation"
+ },
+ {
+ "id": "cablecar-dash",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(0, 0%, 70%)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 11,
+ 3
+ ],
+ [
+ 19,
+ 5.5
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 3
+ ]
+ },
+ "filter": [
+ "==",
+ "class",
+ "aerialway"
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 13,
+ "source-layer": "transportation"
+ },
+ {
+ "id": "boundary_3",
+ "type": "line",
+ "paint": {
+ "line-color": "#9e9cab",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 0.4
+ ],
+ [
+ 5,
+ 0.7
+ ],
+ [
+ 12,
+ 1.6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 5,
+ 3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "admin_level",
+ 3,
+ 4
+ ],
+ [
+ "==",
+ "maritime",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 3,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z0-4",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(139, 139, 139, 1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 3,
+ 1
+ ],
+ [
+ 5,
+ 1.2
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "maritime",
+ 0
+ ],
+ [
+ "!has",
+ "claimed_by"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 5,
+ "minzoom": 0,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z0-4_maritime",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(98,185,229,1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 3,
+ 1
+ ],
+ [
+ 5,
+ 1.2
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "!has",
+ "claimed_by"
+ ],
+ [
+ "==",
+ "maritime",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 5,
+ "minzoom": 0,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z5",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(139, 139, 139, 1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ 1.2
+ ],
+ [
+ 12,
+ 3
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "disputed",
+ 0
+ ],
+ [
+ "==",
+ "maritime",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z5_disputed",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(120, 120, 120, 1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ 1.2
+ ],
+ [
+ 12,
+ 3
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 4,
+ 3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "disputed",
+ 1
+ ],
+ [
+ "==",
+ "maritime",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z5_disputed_maritime",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(98,185,229,1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ 1.2
+ ],
+ [
+ 12,
+ 3
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 4,
+ 3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "disputed",
+ 1
+ ],
+ [
+ "==",
+ "maritime",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z5_maritime",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(98,185,229,1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ 1.2
+ ],
+ [
+ 12,
+ 3
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "disputed",
+ 0
+ ],
+ [
+ "==",
+ "maritime",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "water_name_line",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#5d60be",
+ "text-halo-color": "rgba(255,255,255,0.7)",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": 12,
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-max-width": 5,
+ "symbol-placement": "line"
+ },
+ "source": "openmaptiles",
+ "minzoom": 0,
+ "metadata": {},
+ "source-layer": "water_name"
+ },
+ {
+ "id": "water_name_point",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(76, 125, 173, 1)",
+ "text-halo-color": "rgba(255,255,255,0)",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ "!=",
+ "class",
+ "ocean"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": 12,
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-max-width": 5
+ },
+ "source": "openmaptiles",
+ "maxzoom": 24,
+ "minzoom": 2,
+ "metadata": {},
+ "source-layer": "water_name"
+ },
+ {
+ "id": "water_ocean_name_point",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(76, 125, 173, 1)",
+ "text-halo-color": "rgba(255,255,255,0)",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ "==",
+ "class",
+ "ocean"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": 12,
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-max-width": 5
+ },
+ "source": "openmaptiles",
+ "minzoom": 0,
+ "metadata": {},
+ "source-layer": "water_name"
+ },
+ {
+ "id": "poi_z16_subclass",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ ">=",
+ "rank",
+ 20
+ ],
+ [
+ "any",
+ [
+ "all",
+ [
+ "in",
+ "class",
+ "pitch"
+ ],
+ [
+ "in",
+ "subclass",
+ "soccer",
+ "tennis",
+ "baseball",
+ "basketball",
+ "swimming",
+ "golf"
+ ]
+ ]
+ ],
+ [
+ "any",
+ [
+ "!has",
+ "level"
+ ],
+ [
+ "==",
+ "level",
+ 0
+ ]
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{subclass}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
"text-anchor": "top",
- "text-field": { "stops": [ [ 11, "{ref}" ], [ 12, "{name_en}" ] ] },
- "text-letter-spacing": 0.01,
+ "text-offset": [
+ 0,
+ 0.6
+ ],
+ "text-padding": 2,
"text-max-width": 9
},
- "paint": {
- "text-color": "hsl(230, 48%, 44%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "minzoom": 16,
+ "metadata": {},
+ "source-layer": "poi"
},
{
- "id": "place-islet-archipelago-aboriginal",
+ "id": "poi_z16",
"type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 16,
- "filter": [ "in", "type", "aboriginal_lands", "archipelago", "islet" ],
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ ">=",
+ "rank",
+ 20
+ ],
+ [
+ "none",
+ [
+ "all",
+ [
+ "in",
+ "class",
+ "pitch"
+ ],
+ [
+ "in",
+ "subclass",
+ "soccer",
+ "tennis",
+ "baseball",
+ "basketball",
+ "swimming",
+ "golf"
+ ]
+ ]
+ ],
+ [
+ "any",
+ [
+ "!has",
+ "level"
+ ],
+ [
+ "==",
+ "level",
+ 0
+ ]
+ ]
+ ],
"layout": {
- "text-line-height": 1.2,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 16 ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{class}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "top",
+ "text-offset": [
+ 0,
+ 0.6
+ ],
"text-padding": 2,
- "text-offset": [ 0, 0 ],
- "text-rotation-alignment": "viewport",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 16,
+ "metadata": {},
+ "source-layer": "poi"
+ },
+ {
+ "id": "poi_z15",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ ">=",
+ "rank",
+ 7
+ ],
+ [
+ "<",
+ "rank",
+ 20
+ ],
+ [
+ "any",
+ [
+ "!has",
+ "level"
+ ],
+ [
+ "==",
+ "level",
+ 0
+ ]
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{class}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "top",
+ "text-offset": [
+ 0,
+ 0.6
+ ],
+ "text-padding": 2,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 15,
+ "metadata": {},
+ "source-layer": "poi"
+ },
+ {
+ "id": "poi_z14",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ "any",
+ [
+ "<",
+ "rank",
+ 7
+ ]
+ ],
+ [
+ "any",
+ [
+ "!has",
+ "level"
+ ],
+ [
+ "==",
+ "level",
+ 0
+ ]
+ ]
+ ],
+ "layout": {
+ "icon-size": 0.9,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{class}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "top",
+ "text-offset": [
+ 0,
+ 0.6
+ ],
+ "text-padding": 2,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 14.2,
+ "metadata": {},
+ "source-layer": "poi"
+ },
+ {
+ "id": "poi_transit",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(102, 102, 102, 1)",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "class",
+ "bus",
+ "railway",
+ "airport"
+ ],
+ [
+ "==",
+ "subclass",
+ "station"
+ ]
+ ],
+ "layout": {
+ "icon-size": 0.9,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{class}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "left",
+ "text-offset": [
+ 0.9,
+ 0
+ ],
+ "text-padding": 2,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 15,
+ "metadata": {},
+ "source-layer": "poi"
+ },
+ {
+ "id": "road_oneway",
+ "type": "symbol",
+ "paint": {
+ "icon-opacity": 0.5
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "oneway",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "motorway",
+ "trunk",
+ "primary",
+ "secondary",
+ "tertiary",
+ "minor",
+ "service"
+ ]
+ ],
+ "layout": {
+ "icon-size": {
+ "stops": [
+ [
+ 15,
+ 0.5
+ ],
+ [
+ 19,
+ 1
+ ]
+ ]
+ },
+ "icon-image": "oneway",
+ "visibility": "visible",
+ "icon-rotate": 90,
+ "icon-padding": 2,
+ "symbol-spacing": 75,
+ "symbol-placement": "line",
+ "icon-rotation-alignment": "map"
+ },
+ "source": "openmaptiles",
+ "minzoom": 15,
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_oneway_opposite",
+ "type": "symbol",
+ "paint": {
+ "icon-opacity": 0.5
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "oneway",
+ -1
+ ],
+ [
+ "in",
+ "class",
+ "motorway",
+ "trunk",
+ "primary",
+ "secondary",
+ "tertiary",
+ "minor",
+ "service"
+ ]
+ ],
+ "layout": {
+ "icon-size": {
+ "stops": [
+ [
+ 15,
+ 0.5
+ ],
+ [
+ 19,
+ 1
+ ]
+ ]
+ },
+ "icon-image": "oneway",
+ "icon-rotate": -90,
+ "icon-padding": 2,
+ "symbol-spacing": 75,
+ "symbol-placement": "line",
+ "icon-rotation-alignment": "map"
+ },
+ "source": "openmaptiles",
+ "minzoom": 15,
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_label",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#765",
+ "text-halo-blur": 0.5,
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all"
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "base": 1,
+ "stops": [
+ [
+ 13,
+ 12
+ ],
+ [
+ 14,
+ 13
+ ]
+ ]
+ },
+ "text-field": "{name:latin} {name:nonlatin}",
+ "text-anchor": "center",
+ "text-offset": [
+ 0,
+ 0.15
+ ],
+ "symbol-placement": "line"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation_name"
+ },
+ {
+ "id": "highway-shield",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(37, 36, 36, 1)"
+ },
+ "filter": [
+ "all",
+ [
+ "<=",
+ "ref_length",
+ 6
+ ],
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "!in",
+ "network",
+ "us-interstate",
+ "us-highway",
+ "us-state"
+ ]
+ ],
+ "layout": {
+ "icon-size": 1,
+ "text-font": [
+ "Noto Sans Regular"
+ ],
+ "text-size": 10,
+ "icon-image": "road_{ref_length}",
+ "text-field": "{ref}",
+ "symbol-spacing": 200,
+ "symbol-placement": {
+ "base": 1,
+ "stops": [
+ [
+ 10,
+ "point"
+ ],
+ [
+ 11,
+ "line"
+ ]
+ ]
+ },
+ "symbol-avoid-edges": true,
+ "icon-rotation-alignment": "viewport",
+ "text-rotation-alignment": "viewport"
+ },
+ "source": "openmaptiles",
+ "minzoom": 8,
+ "source-layer": "transportation_name"
+ },
+ {
+ "id": "highway-shield-us-interstate",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(255, 255, 255, 1)"
+ },
+ "filter": [
+ "all",
+ [
+ "<=",
+ "ref_length",
+ 6
+ ],
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "in",
+ "network",
+ "us-interstate"
+ ]
+ ],
+ "layout": {
+ "icon-size": 1,
+ "text-font": [
+ "Noto Sans Regular"
+ ],
+ "text-size": 9,
+ "icon-image": "{network}_{ref_length}",
+ "text-field": "{ref}",
+ "symbol-spacing": 200,
+ "symbol-placement": {
+ "base": 1,
+ "stops": [
+ [
+ 7,
+ "point"
+ ],
+ [
+ 7,
+ "line"
+ ],
+ [
+ 8,
+ "line"
+ ]
+ ]
+ },
+ "symbol-avoid-edges": true,
+ "icon-rotation-alignment": "viewport",
+ "text-rotation-alignment": "viewport"
+ },
+ "source": "openmaptiles",
+ "minzoom": 7,
+ "source-layer": "transportation_name"
+ },
+ {
+ "id": "highway-shield-us-other",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(37, 36, 36, 1)"
+ },
+ "filter": [
+ "all",
+ [
+ "<=",
+ "ref_length",
+ 6
+ ],
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "in",
+ "network",
+ "us-highway",
+ "us-state"
+ ]
+ ],
+ "layout": {
+ "icon-size": 1,
+ "text-font": [
+ "Noto Sans Regular"
+ ],
+ "text-size": 9,
+ "icon-image": "{network}_{ref_length}",
+ "text-field": "{ref}",
+ "symbol-spacing": 200,
+ "symbol-placement": {
+ "base": 1,
+ "stops": [
+ [
+ 10,
+ "point"
+ ],
+ [
+ 11,
+ "line"
+ ]
+ ]
+ },
+ "symbol-avoid-edges": true,
+ "icon-rotation-alignment": "viewport",
+ "text-rotation-alignment": "viewport"
+ },
+ "source": "openmaptiles",
+ "minzoom": 9,
+ "source-layer": "transportation_name"
+ },
+ {
+ "id": "airport-label-major",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "has",
+ "iata"
+ ]
+ ],
+ "layout": {
+ "icon-size": 1,
+ "text-font": [
+ "Noto Sans Regular"
+ ],
+ "text-size": 12,
+ "icon-image": "airport_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "top",
+ "text-offset": [
+ 0,
+ 0.6
+ ],
+ "text-padding": 2,
+ "text-optional": true,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 10,
+ "source-layer": "aerodrome_label"
+ },
+ {
+ "id": "airport_gate",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(135, 135, 135, 1)",
+ "text-halo-color": "rgba(255, 255, 255, 1)",
+ "text-halo-width": 1.5
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "gate"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Medium",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "stops": [
+ [
+ 17,
+ 9
+ ],
+ [
+ 19,
+ 15
+ ]
+ ]
+ },
+ "text-field": "{ref}"
+ },
+ "source": "openmaptiles",
+ "minzoom": 16.5,
+ "source-layer": "aeroway"
+ },
+ {
+ "id": "place_other",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(66, 62, 62, 1)",
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 1.2
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "class",
+ "hamlet",
+ "island",
+ "islet",
+ "neighbourhood",
+ "suburb"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 10
+ ],
+ [
+ 15,
+ 14
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-max-width": 9,
+ "text-transform": "uppercase",
+ "text-letter-spacing": 0.1
+ },
+ "source": "openmaptiles",
+ "minzoom": 8,
+ "metadata": {},
+ "source-layer": "place"
+ },
+ {
+ "id": "place_village",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#333",
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 1.2
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "village"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "base": 1.2,
+ "stops": [
+ [
+ 10,
+ 12
+ ],
+ [
+ 15,
+ 22
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
"text-max-width": 8
},
- "paint": {
- "text-color": "hsl(230, 29%, 35%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
- },
- {
- "id": "place-neighbourhood",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 10,
- "maxzoom": 16,
- "filter": [ "==", "type", "neighbourhood" ],
- "layout": {
- "text-field": "{name_en}",
- "text-transform": "uppercase",
- "text-letter-spacing": 0.1,
- "text-max-width": 7,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-padding": 3,
- "text-size": { "base": 1, "stops": [ [ 12, 11 ], [ 16, 16 ] ] }
- },
- "paint": {
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "text-color": "hsl(230, 29%, 35%)",
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "place-suburb",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 10,
- "maxzoom": 16,
- "filter": [ "==", "type", "suburb" ],
- "layout": {
- "text-field": "{name_en}",
- "text-transform": "uppercase",
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-letter-spacing": 0.15,
- "text-max-width": 7,
- "text-padding": 3,
- "text-size": { "base": 1, "stops": [ [ 11, 11 ], [ 15, 18 ] ] }
- },
- "paint": {
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "text-color": "hsl(230, 29%, 35%)",
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "place-hamlet",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 10,
- "maxzoom": 16,
- "filter": [ "==", "type", "hamlet" ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 12, 11.5 ], [ 15, 16 ] ] }
- },
- "paint": {
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "text-color": "hsl(0, 0%, 0%)"
- }
- },
- {
- "id": "place-village",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
+ "source": "openmaptiles",
"minzoom": 8,
- "maxzoom": 15,
- "filter": [ "==", "type", "village" ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-max-width": 7,
- "text-size": { "base": 1, "stops": [ [ 10, 11.5 ], [ 16, 18 ] ] }
- },
- "paint": {
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "text-color": "hsl(0, 0%, 0%)"
- }
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-town",
+ "id": "place_town",
"type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
+ "paint": {
+ "text-color": "#333",
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 1.2
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "town"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "base": 1.2,
+ "stops": [
+ [
+ 7,
+ 12
+ ],
+ [
+ 11,
+ 16
+ ]
+ ]
+ },
+ "icon-image": {
+ "base": 1,
+ "stops": [
+ [
+ 0,
+ "circle-stroked_16"
+ ],
+ [
+ 10,
+ ""
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "text-anchor": "bottom",
+ "text-offset": [
+ 0,
+ 0
+ ],
+ "text-max-width": 8
+ },
+ "source": "openmaptiles",
"minzoom": 6,
- "maxzoom": 15,
- "filter": [ "==", "type", "town" ],
- "layout": {
- "icon-image": "dot-9",
- "text-font": {
- "base": 1,
- "stops": [
- [ 11, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 12, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
- ]
- },
- "text-offset": { "base": 1, "stops": [ [ 7, [ 0, -0.15 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "bottom" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7,
- "text-size": { "base": 1, "stops": [ [ 7, 11.5 ], [ 15, 20 ] ] }
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] }
- }
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-island",
+ "id": "place_city",
"type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 16,
- "filter": [ "==", "type", "island" ],
+ "paint": {
+ "text-color": "#333",
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 1.2
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "city"
+ ]
+ ],
"layout": {
- "text-line-height": 1.2,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 16 ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
+ "text-font": [
+ "Roboto Medium",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "base": 1.2,
+ "stops": [
+ [
+ 7,
+ 14
+ ],
+ [
+ 11,
+ 24
+ ]
+ ]
+ },
+ "icon-image": {
+ "base": 1,
+ "stops": [
+ [
+ 0,
+ "circle-stroked_16"
+ ],
+ [
+ 10,
+ ""
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "text-anchor": "bottom",
+ "text-offset": [
+ 0,
+ 0
+ ],
+ "icon-optional": false,
+ "text-max-width": 8,
+ "icon-allow-overlap": true
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "place"
+ },
+ {
+ "id": "place_state",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(74, 72, 66, 1)",
+ "text-halo-color": "rgba(255,255,255,0.7)",
+ "text-halo-width": 0.8
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "state"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Medium",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "stops": [
+ [
+ 3,
+ 10
+ ],
+ [
+ 6,
+ 14
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
"text-padding": 2,
- "text-offset": [ 0, 0 ],
- "text-rotation-alignment": "viewport",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 7
+ "text-transform": "uppercase",
+ "text-letter-spacing": 0.1
},
- "paint": {
- "text-color": "hsl(230, 29%, 35%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
+ "source": "openmaptiles",
+ "maxzoom": 6,
+ "minzoom": 3,
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-city-sm",
+ "id": "country_other",
"type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 14,
- "filter": [ "all", [ "!in", "scalerank", 0, 1, 2, 3, 4, 5 ], [ "==", "type", "city" ] ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 6, 12 ], [ 14, 22 ] ] },
- "icon-image": "dot-9",
- "text-font": {
- "base": 1,
- "stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
- ]
- },
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, -0.2 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "bottom" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7
- },
"paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] }
- }
- },
- {
- "id": "place-city-md-s",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 14,
- "filter": [
- "all",
- [ "in", "ldir", "E", "S", "SE", "SW" ],
- [ "in", "scalerank", 3, 4, 5 ],
- [ "==", "type", "city" ]
- ],
- "layout": {
- "text-field": "{name_en}",
- "icon-image": "dot-10",
- "text-anchor": { "base": 1, "stops": [ [ 7, "top" ], [ 8, "center" ] ] },
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, 0.1 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-font": {
- "base": 1,
- "stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
- ]
- },
- "text-size": { "base": 0.9, "stops": [ [ 5, 12 ], [ 12, 22 ] ] }
- },
- "paint": {
- "text-halo-width": 1,
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-color": "hsl(0, 0%, 0%)",
+ "text-color": "#334",
"text-halo-blur": 1,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] }
- }
- },
- {
- "id": "place-city-md-n",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 14,
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 0.8
+ },
"filter": [
"all",
- [ "in", "ldir", "N", "NE", "NW", "W" ],
- [ "in", "scalerank", 3, 4, 5 ],
- [ "==", "type", "city" ]
+ [
+ "==",
+ "class",
+ "country"
+ ],
+ [
+ "!has",
+ "iso_a2"
+ ]
],
"layout": {
- "icon-image": "dot-10",
- "text-font": {
- "base": 1,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
"stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
+ [
+ 3,
+ 9
+ ],
+ [
+ 7,
+ 15
+ ]
]
},
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, -0.25 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "bottom" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7,
- "text-size": { "base": 0.9, "stops": [ [ 5, 12 ], [ 12, 22 ] ] }
+ "text-field": "{name:latin}",
+ "text-max-width": 6.25,
+ "text-transform": "none"
},
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] },
- "text-halo-blur": 1
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-city-lg-s",
+ "id": "country_3",
"type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 1,
- "maxzoom": 14,
+ "paint": {
+ "text-color": "#334",
+ "text-halo-blur": 1,
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 0.8
+ },
"filter": [
"all",
- [ "in", "ldir", "E", "S", "SE", "SW" ],
- [ "<=", "scalerank", 2 ],
- [ "==", "type", "city" ]
+ [
+ ">=",
+ "rank",
+ 3
+ ],
+ [
+ "==",
+ "class",
+ "country"
+ ],
+ [
+ "has",
+ "iso_a2"
+ ]
],
"layout": {
- "icon-image": "dot-11",
- "text-font": {
- "base": 1,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
"stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
+ [
+ 3,
+ 11
+ ],
+ [
+ 7,
+ 17
+ ]
]
},
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, 0.15 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "top" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7,
- "text-size": { "base": 0.9, "stops": [ [ 4, 12 ], [ 10, 22 ] ] }
+ "text-field": "{name:latin}",
+ "text-max-width": 6.25,
+ "text-transform": "none"
},
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] },
- "text-halo-blur": 1
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-city-lg-n",
+ "id": "country_2",
"type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 1,
- "maxzoom": 14,
+ "paint": {
+ "text-color": "#334",
+ "text-halo-blur": 1,
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 0.8
+ },
"filter": [
"all",
- [ "in", "ldir", "N", "NE", "NW", "W" ],
- [ "<=", "scalerank", 2 ],
- [ "==", "type", "city" ]
+ [
+ "==",
+ "rank",
+ 2
+ ],
+ [
+ "==",
+ "class",
+ "country"
+ ],
+ [
+ "has",
+ "iso_a2"
+ ]
],
"layout": {
- "icon-image": "dot-11",
- "text-font": {
- "base": 1,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
"stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
+ [
+ 2,
+ 11
+ ],
+ [
+ 5,
+ 17
+ ]
]
},
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, -0.25 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "bottom" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7,
- "text-size": { "base": 0.9, "stops": [ [ 4, 12 ], [ 10, 22 ] ] }
+ "text-field": "{name:latin}",
+ "text-max-width": 6.25,
+ "text-transform": "none"
},
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "place"
+ },
+ {
+ "id": "country_1",
+ "type": "symbol",
"paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-opacity": 1,
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] },
- "text-halo-blur": 1
- }
+ "text-color": "#334",
+ "text-halo-blur": 1,
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 0.8
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "rank",
+ 1
+ ],
+ [
+ "==",
+ "class",
+ "country"
+ ],
+ [
+ "has",
+ "iso_a2"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
+ "stops": [
+ [
+ 1,
+ 11
+ ],
+ [
+ 4,
+ 17
+ ],
+ [
+ 6,
+ 19
+ ]
+ ]
+ },
+ "text-field": "{name:latin}",
+ "text-max-width": 6.25,
+ "text-transform": "none"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "marine-label-sm-ln",
+ "id": "continent",
"type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 3,
- "maxzoom": 10,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ ">=", "labelrank", 4 ] ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 3, 12 ], [ 6, 16 ] ] },
- "symbol-spacing": { "base": 1, "stops": [ [ 4, 100 ], [ 6, 400 ] ] },
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.1,
- "text-max-width": 5
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-sm-pt",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 3,
- "maxzoom": 10,
- "filter": [ "all", [ "==", "$type", "Point" ], [ ">=", "labelrank", 4 ] ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": 5,
- "text-letter-spacing": 0.1,
- "text-line-height": 1.5,
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 3, 12 ], [ 6, 16 ] ] }
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-md-ln",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 2,
- "maxzoom": 8,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "in", "labelrank", 2, 3 ] ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1.1, "stops": [ [ 2, 12 ], [ 5, 20 ] ] },
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.15,
- "text-max-width": 5
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-md-pt",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 2,
- "maxzoom": 8,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "in", "labelrank", 2, 3 ] ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": 5,
- "text-letter-spacing": 0.15,
- "text-line-height": 1.5,
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1.1, "stops": [ [ 2, 14 ], [ 5, 20 ] ] }
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-lg-ln",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 1,
- "maxzoom": 4,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "labelrank", 1 ] ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": 4,
- "text-letter-spacing": 0.25,
- "text-line-height": 1.1,
- "symbol-placement": "line",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 1, 14 ], [ 4, 30 ] ] }
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-lg-pt",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 1,
- "maxzoom": 4,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "==", "labelrank", 1 ] ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": 4,
- "text-letter-spacing": 0.25,
- "text-line-height": 1.5,
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 1, 14 ], [ 4, 30 ] ] }
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "state-label-sm",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856151690.9143" },
- "source": "composite",
- "source-layer": "state_label",
- "minzoom": 3,
- "maxzoom": 9,
- "filter": [ "<", "area", 20000 ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 6, 10 ], [ 9, 14 ] ] },
- "text-transform": "uppercase",
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "text-field": { "base": 1, "stops": [ [ 0, "{abbr}" ], [ 6, "{name_en}" ] ] },
- "text-letter-spacing": 0.15,
- "text-max-width": 5
- },
"paint": {
- "text-opacity": 1,
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
+ "text-color": "#633",
+ "text-halo-color": "rgba(255,255,255,0.7)",
"text-halo-width": 1
- }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "continent"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 13,
+ "text-field": "{name:latin}",
+ "text-justify": "center",
+ "text-transform": "uppercase"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 1,
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "state-label-md",
+ "id": "housenumber",
"type": "symbol",
- "metadata": { "mapbox:group": "1444856151690.9143" },
- "source": "composite",
- "source-layer": "state_label",
- "minzoom": 3,
- "maxzoom": 8,
- "filter": [ "all", [ "<", "area", 80000 ], [ ">=", "area", 20000 ] ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 5, 10 ], [ 8, 16 ] ] },
- "text-transform": "uppercase",
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "text-field": { "base": 1, "stops": [ [ 0, "{abbr}" ], [ 5, "{name_en}" ] ] },
- "text-letter-spacing": 0.15,
- "text-max-width": 6
- },
"paint": {
- "text-opacity": 1,
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
- },
- {
- "id": "state-label-lg",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856151690.9143" },
- "source": "composite",
- "source-layer": "state_label",
- "minzoom": 3,
- "maxzoom": 7,
- "filter": [ ">=", "area", 80000 ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 4, 10 ], [ 7, 18 ] ] },
- "text-transform": "uppercase",
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "text-padding": 1,
- "text-field": { "base": 1, "stops": [ [ 0, "{abbr}" ], [ 4, "{name_en}" ] ] },
- "text-letter-spacing": 0.15,
- "text-max-width": 6
+ "text-color": "rgba(119, 102, 85, 0.69)"
},
- "paint": {
- "text-opacity": 1,
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
- },
- {
- "id": "country-label-sm",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856144497.7825" },
- "source": "composite",
- "source-layer": "country_label",
- "minzoom": 1,
- "maxzoom": 10,
- "filter": [ ">=", "scalerank", 5 ],
"layout": {
- "text-field": "{name_en}",
- "text-max-width": 6,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-size": { "base": 0.9, "stops": [ [ 5, 14 ], [ 9, 22 ] ] }
+ "text-font": [
+ "Roboto Medium",
+ "Noto Sans Regular"
+ ],
+ "text-size": 10,
+ "text-field": "{housenumber}"
},
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": { "base": 1, "stops": [ [ 2, "rgba(255,255,255,0.75)" ], [ 3, "hsl(0, 0%, 100%)" ] ] },
- "text-halo-width": 1.25
- }
- },
- {
- "id": "country-label-md",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856144497.7825" },
- "source": "composite",
- "source-layer": "country_label",
- "minzoom": 1,
- "maxzoom": 8,
- "filter": [ "in", "scalerank", 3, 4 ],
- "layout": {
- "text-field": { "base": 1, "stops": [ [ 0, "{code}" ], [ 2, "{name_en}" ] ] },
- "text-max-width": 6,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 3, 10 ], [ 8, 24 ] ] }
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": { "base": 1, "stops": [ [ 2, "rgba(255,255,255,0.75)" ], [ 3, "hsl(0, 0%, 100%)" ] ] },
- "text-halo-width": 1.25
- }
- },
- {
- "id": "country-label-lg",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856144497.7825" },
- "source": "composite",
- "source-layer": "country_label",
- "minzoom": 1,
- "maxzoom": 7,
- "filter": [ "in", "scalerank", 1, 2 ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": { "base": 1, "stops": [ [ 0, 5 ], [ 3, 6 ] ] },
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 1, 10 ], [ 6, 24 ] ] }
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": { "base": 1, "stops": [ [ 2, "rgba(255,255,255,0.75)" ], [ 3, "hsl(0, 0%, 100%)" ] ] },
- "text-halo-width": 1.25
- }
+ "source": "openmaptiles",
+ "minzoom": 17.5,
+ "source-layer": "housenumber"
}
- ]
+ ],
+ "sprite": "maptiler://sprites/streets/sprite",
+ "bearing": 0,
+ "sources": {
+ "openmaptiles": {
+ "url": "maptiler://sources/v3",
+ "type": "vector"
+ },
+ "maptiler_attribution": {
+ "type": "vector",
+ "attribution": "© MapTiler © OpenStreetMap contributors"
+ }
+ },
+ "version": 8,
+ "metadata": {
+ "mapbox:type": "template",
+ "maptiler:copyright": "This style was generated on MapTiler Cloud. Usage outside of MapTiler Cloud requires valid OpenMapTiles Production Package: https://openmaptiles.com/production-package/ -- please contact us.",
+ "openmaptiles:version": "3.x"
+ }
}
\ No newline at end of file
diff --git a/benchmark/fixtures/api/style_formatted_labels.json b/benchmark/fixtures/api/style_formatted_labels.json
index c62777038..fbb17af00 100644
--- a/benchmark/fixtures/api/style_formatted_labels.json
+++ b/benchmark/fixtures/api/style_formatted_labels.json
@@ -1,3993 +1,6514 @@
{
- "version": 8,
- "name": "Mapbox Streets",
- "metadata": {
- "mapbox:autocomposite": true,
- "mapbox:type": "default",
- "mapbox:groups": {
- "1444934828655.3389": { "name": "Aeroways", "collapsed": true },
- "1444933322393.2852": { "name": "POI labels (scalerank 1)", "collapsed": true },
- "1444855786460.0557": { "name": "Roads", "collapsed": true },
- "1444933575858.6992": { "name": "Highway shields", "collapsed": true },
- "1444934295202.7542": { "name": "Admin boundaries", "collapsed": true },
- "1444856151690.9143": { "name": "State labels", "collapsed": true },
- "1444933721429.3076": { "name": "Road labels", "collapsed": true },
- "1444933358918.2366": { "name": "POI labels (scalerank 2)", "collapsed": true },
- "1444933808272.805": { "name": "Water labels", "collapsed": true },
- "1444933372896.5967": { "name": "POI labels (scalerank 3)", "collapsed": true },
- "1444855799204.86": { "name": "Bridges", "collapsed": true },
- "1444856087950.3635": { "name": "Marine labels", "collapsed": true },
- "1456969573402.7817": { "name": "Hillshading", "collapsed": true },
- "1444862510685.128": { "name": "City labels", "collapsed": true },
- "1444855769305.6016": { "name": "Tunnels", "collapsed": true },
- "1456970288113.8113": { "name": "Landcover", "collapsed": true },
- "1444856144497.7825": { "name": "Country labels", "collapsed": true },
- "1444933456003.5437": { "name": "POI labels (scalerank 4)", "collapsed": true }
- }
- },
- "sources": {
- "composite": { "url": "mapbox://mapbox.mapbox-terrain-v2,mapbox.mapbox-streets-v7", "type": "vector" }
- },
- "sprite": "mapbox://sprites/mapbox/streets-v10",
- "glyphs": "mapbox://fonts/mapbox/{fontstack}/{range}.pbf",
- "visibility": "public",
+ "id": "streets",
+ "name": "Streets",
+ "zoom": 1,
+ "pitch": 0,
+ "center": [
+ 0,
+ 0
+ ],
+ "glyphs": "maptiler://fonts/{fontstack}/{range}.pbf",
"layers": [
{
"id": "background",
"type": "background",
- "layout": {},
"paint": {
- "background-color": { "base": 1, "stops": [ [ 11, "hsl(35, 32%, 91%)" ], [ 13, "hsl(35, 12%, 89%)" ] ] }
+ "background-color": {
+ "stops": [
+ [
+ 6,
+ "rgba(252, 247, 229, 1)"
+ ],
+ [
+ 10,
+ "rgba(252, 247, 229, 1)"
+ ],
+ [
+ 14,
+ "rgba(246, 241, 229, 1)"
+ ],
+ [
+ 15,
+ "rgba(246, 241, 229, 1)"
+ ]
+ ]
+ }
+ },
+ "layout": {
+ "visibility": "visible"
}
},
{
- "id": "landcover_snow",
+ "id": "landcover_cropland",
"type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "filter": [ "==", "class", "snow" ],
- "layout": {},
- "paint": { "fill-color": "hsl(0, 0%, 100%)", "fill-opacity": 0.2, "fill-antialias": false }
+ "paint": {
+ "fill-color": "rgba(243, 235, 195, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "crop"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_grassland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(226, 236, 197, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "grass"
+ ]
+ ],
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_scrubland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(199, 230, 179, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "scrub"
+ ]
+ ],
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_treeland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(190, 222, 173, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "tree"
+ ]
+ ],
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_forestland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(171, 217, 170, 1)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "forest"
+ ]
+ ],
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "landcover_snowland",
+ "type": "fill",
+ "paint": {
+ "fill-color": "hsl(0, 0%, 100%)",
+ "fill-opacity": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 1
+ ],
+ [
+ 8,
+ 0
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "snow"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "source-layer": "globallandcover"
+ },
+ {
+ "id": "park_outline",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(228, 241, 215, 1)",
+ "line-opacity": 1,
+ "line-dasharray": [
+ 1,
+ 1.5
+ ]
+ },
+ "filter": [
+ "all"
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "source-layer": "park"
+ },
+ {
+ "id": "landuse_residential",
+ "type": "fill",
+ "paint": {
+ "fill-color": {
+ "base": 1,
+ "stops": [
+ [
+ 9,
+ "rgba(233, 227, 210, 0.80)"
+ ],
+ [
+ 12,
+ "rgba(233, 227, 210, 0.55)"
+ ],
+ [
+ 16,
+ "rgba(233, 227, 210, 0.35)"
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "class",
+ "residential",
+ "suburbs",
+ "neighbourhood"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 24,
+ "metadata": {},
+ "source-layer": "landuse"
},
{
"id": "landcover_wood",
"type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "maxzoom": 14,
- "filter": [ "==", "class", "wood" ],
- "layout": {},
"paint": {
- "fill-color": "hsl(75, 62%, 81%)",
- "fill-opacity": { "base": 1.5, "stops": [ [ 2, 0.3 ], [ 7, 0 ] ] },
+ "fill-color": "hsla(98, 61%, 72%, 0.7)",
+ "fill-opacity": 0.4,
"fill-antialias": false
- }
- },
- {
- "id": "landcover_scrub",
- "type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "maxzoom": 14,
- "filter": [ "==", "class", "scrub" ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(75, 62%, 81%)",
- "fill-opacity": { "base": 1.5, "stops": [ [ 2, 0.3 ], [ 7, 0 ] ] },
- "fill-antialias": false
- }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "wood"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landcover"
},
{
"id": "landcover_grass",
"type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "maxzoom": 14,
- "filter": [ "==", "class", "grass" ],
- "layout": {},
"paint": {
- "fill-color": "hsl(75, 62%, 81%)",
- "fill-opacity": { "base": 1.5, "stops": [ [ 2, 0.3 ], [ 7, 0 ] ] },
+ "fill-color": "rgba(224, 232, 201, 1)",
+ "fill-opacity": 0.3,
"fill-antialias": false
- }
- },
- {
- "id": "landcover_crop",
- "type": "fill",
- "metadata": { "mapbox:group": "1456970288113.8113" },
- "source": "composite",
- "source-layer": "landcover",
- "maxzoom": 14,
- "filter": [ "==", "class", "crop" ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(75, 62%, 81%)",
- "fill-opacity": { "base": 1.5, "stops": [ [ 2, 0.3 ], [ 7, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "national_park",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse_overlay",
- "filter": [ "==", "class", "national_park" ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(100, 58%, 76%)",
- "fill-opacity": { "base": 1, "stops": [ [ 5, 0 ], [ 6, 0.5 ] ] }
- }
- },
- {
- "id": "hospital",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "hospital" ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15.5, "hsl(340, 37%, 87%)" ], [ 16, "hsl(340, 63%, 89%)" ] ] }
- }
- },
- {
- "id": "school",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "school" ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15.5, "hsl(50, 47%, 81%)" ], [ 16, "hsl(50, 63%, 84%)" ] ] }
- }
- },
- {
- "id": "park",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "park" ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(100, 58%, 76%)",
- "fill-opacity": { "base": 1, "stops": [ [ 5, 0 ], [ 6, 1 ] ] }
- }
- },
- {
- "id": "pitch",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "pitch" ],
- "layout": {},
- "paint": { "fill-color": "hsl(100, 57%, 72%)" }
- },
- {
- "id": "pitch-line",
- "type": "line",
- "source": "composite",
- "source-layer": "landuse",
- "minzoom": 15,
- "filter": [ "==", "class", "pitch" ],
- "layout": { "line-join": "miter" },
- "paint": { "line-color": "hsl(75, 57%, 84%)" }
- },
- {
- "id": "cemetery",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "cemetery" ],
- "layout": {},
- "paint": { "fill-color": "hsl(75, 37%, 81%)" }
- },
- {
- "id": "industrial",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "industrial" ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15.5, "hsl(230, 15%, 86%)" ], [ 16, "hsl(230, 29%, 89%)" ] ] }
- }
- },
- {
- "id": "sand",
- "type": "fill",
- "source": "composite",
- "source-layer": "landuse",
- "filter": [ "==", "class", "sand" ],
- "layout": {},
- "paint": { "fill-color": "hsl(60, 46%, 87%)" }
- },
- {
- "id": "hillshade_highlight_bright",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 94 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(0, 0%, 100%)",
- "fill-opacity": { "stops": [ [ 14, 0.12 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_highlight_med",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 90 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(0, 0%, 100%)",
- "fill-opacity": { "stops": [ [ 14, 0.12 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_shadow_faint",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 89 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(56, 59%, 22%)",
- "fill-opacity": { "stops": [ [ 14, 0.05 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_shadow_med",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 78 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(56, 59%, 22%)",
- "fill-opacity": { "stops": [ [ 14, 0.05 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_shadow_dark",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 67 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(56, 59%, 22%)",
- "fill-opacity": { "stops": [ [ 14, 0.06 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "hillshade_shadow_extreme",
- "type": "fill",
- "metadata": { "mapbox:group": "1456969573402.7817" },
- "source": "composite",
- "source-layer": "hillshade",
- "maxzoom": 16,
- "filter": [ "==", "level", 56 ],
- "layout": {},
- "paint": {
- "fill-color": "hsl(56, 59%, 22%)",
- "fill-opacity": { "stops": [ [ 14, 0.06 ], [ 16, 0 ] ] },
- "fill-antialias": false
- }
- },
- {
- "id": "waterway-river-canal",
- "type": "line",
- "source": "composite",
- "source-layer": "waterway",
- "minzoom": 8,
- "filter": [ "in", "class", "canal", "river" ],
- "layout": {
- "line-cap": { "base": 1, "stops": [ [ 0, "butt" ], [ 11, "round" ] ] },
- "line-join": "round"
},
- "paint": {
- "line-color": "hsl(205, 87%, 76%)",
- "line-width": { "base": 1.3, "stops": [ [ 8.5, 0.1 ], [ 20, 8 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 8, 0 ], [ 8.5, 1 ] ] }
- }
- },
- {
- "id": "waterway-small",
- "type": "line",
- "source": "composite",
- "source-layer": "waterway",
- "minzoom": 13,
- "filter": [ "!in", "class", "canal", "river" ],
- "layout": { "line-join": "round", "line-cap": "round" },
- "paint": {
- "line-color": "hsl(205, 87%, 76%)",
- "line-width": { "base": 1.35, "stops": [ [ 13.5, 0.1 ], [ 20, 3 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 13, 0 ], [ 13.5, 1 ] ] }
- }
- },
- {
- "id": "water-shadow",
- "type": "fill",
- "source": "composite",
- "source-layer": "water",
- "layout": {},
- "paint": {
- "fill-color": "hsl(215, 84%, 69%)",
- "fill-translate": { "base": 1.2, "stops": [ [ 7, [ 0, 0 ] ], [ 16, [ -1, -1 ] ] ] },
- "fill-translate-anchor": "viewport",
- "fill-opacity": 1
- }
- },
- { "id": "water", "ref": "water-shadow", "paint": { "fill-color": "hsl(196, 80%, 70%)" } },
- {
- "id": "barrier_line-land-polygon",
- "type": "fill",
- "source": "composite",
- "source-layer": "barrier_line",
- "filter": [ "all", [ "==", "$type", "Polygon" ], [ "==", "class", "land" ] ],
- "layout": {},
- "paint": { "fill-color": "hsl(35, 12%, 89%)" }
- },
- {
- "id": "barrier_line-land-line",
- "type": "line",
- "source": "composite",
- "source-layer": "barrier_line",
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "class", "land" ] ],
- "layout": { "line-cap": "round" },
- "paint": {
- "line-width": { "base": 1.99, "stops": [ [ 14, 0.75 ], [ 20, 40 ] ] },
- "line-color": "hsl(35, 12%, 89%)"
- }
- },
- {
- "id": "aeroway-polygon",
- "type": "fill",
- "metadata": { "mapbox:group": "1444934828655.3389" },
- "source": "composite",
- "source-layer": "aeroway",
- "minzoom": 11,
- "filter": [ "all", [ "==", "$type", "Polygon" ], [ "!=", "type", "apron" ] ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15, "hsl(230, 23%, 82%)" ], [ 16, "hsl(230, 37%, 84%)" ] ] },
- "fill-opacity": { "base": 1, "stops": [ [ 11, 0 ], [ 11.5, 1 ] ] }
- }
- },
- {
- "id": "aeroway-runway",
- "type": "line",
- "metadata": { "mapbox:group": "1444934828655.3389" },
- "source": "composite",
- "source-layer": "aeroway",
- "minzoom": 9,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "type", "runway" ] ],
- "layout": {},
- "paint": {
- "line-color": { "base": 1, "stops": [ [ 15, "hsl(230, 23%, 82%)" ], [ 16, "hsl(230, 37%, 84%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 9, 1 ], [ 18, 80 ] ] }
- }
- },
- {
- "id": "aeroway-taxiway",
- "type": "line",
- "metadata": { "mapbox:group": "1444934828655.3389" },
- "source": "composite",
- "source-layer": "aeroway",
- "minzoom": 9,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "type", "taxiway" ] ],
- "layout": {},
- "paint": {
- "line-color": { "base": 1, "stops": [ [ 15, "hsl(230, 23%, 82%)" ], [ 16, "hsl(230, 37%, 84%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 10, 0.5 ], [ 18, 20 ] ] }
- }
- },
- {
- "id": "building-line",
- "type": "line",
- "source": "composite",
- "source-layer": "building",
- "minzoom": 15,
- "filter": [ "all", [ "!=", "type", "building:part" ], [ "==", "underground", "false" ] ],
- "layout": {},
- "paint": {
- "line-color": "hsl(35, 6%, 79%)",
- "line-width": { "base": 1.5, "stops": [ [ 15, 0.75 ], [ 20, 3 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 15.5, 0 ], [ 16, 1 ] ] }
- }
- },
- {
- "id": "building",
- "type": "fill",
- "source": "composite",
- "source-layer": "building",
- "minzoom": 15,
- "filter": [ "all", [ "!=", "type", "building:part" ], [ "==", "underground", "false" ] ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 15, "hsl(35, 11%, 88%)" ], [ 16, "hsl(35, 8%, 85%)" ] ] },
- "fill-opacity": { "base": 1, "stops": [ [ 15.5, 0 ], [ 16, 1 ] ] },
- "fill-outline-color": "hsl(35, 6%, 79%)"
- }
- },
- {
- "id": "tunnel-street-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11.5, 0 ], [ 12, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "tunnel-street_limited-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street_limited" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11.5, 0 ], [ 12, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "tunnel-service-link-track-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
[
- "all",
- [ "in", "class", "link", "service", "track" ],
- [ "==", "structure", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
+ "==",
+ "class",
+ "grass"
]
],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 19%, 75%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-dasharray": [ 3, 3 ]
- }
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landcover"
},
{
- "id": "tunnel-street_limited-case",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-street_limited-low",
+ "id": "landuse_cemetery",
+ "type": "fill",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 19%, 75%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-dasharray": [ 3, 3 ],
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
+ "fill-color": "hsl(75, 37%, 81%)"
+ },
+ "filter": [
+ "==",
+ "class",
+ "cemetery"
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-street-case",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-street-low",
+ "id": "landuse_hospital",
+ "type": "fill",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 19%, 75%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-dasharray": [ 3, 3 ],
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
+ "fill-color": "rgba(249, 225, 220, 1)"
+ },
+ "filter": [
+ "==",
+ "class",
+ "hospital"
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-secondary-tertiary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ "id": "landuse_school",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgb(236,238,204)"
+ },
+ "filter": [
+ "==",
+ "class",
+ "school"
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
+ },
+ {
+ "id": "landuse_stadium",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgb(236,238,204)"
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "in", "class", "secondary", "tertiary" ], [ "==", "structure", "tunnel" ] ]
+ [
+ "in",
+ "class",
+ "stadium",
+ "pitch",
+ "track"
+ ]
],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.2, "stops": [ [ 10, 0.75 ], [ 18, 2 ] ] },
- "line-dasharray": [ 3, 3 ],
- "line-gap-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-color": "hsl(230, 19%, 75%)"
- }
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-primary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ "id": "landuse_garages",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(236, 236, 236, 1)"
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "primary" ], [ "==", "structure", "tunnel" ] ]
+ [
+ "in",
+ "class",
+ "garages"
+ ]
],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-dasharray": [ 3, 3 ],
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(230, 19%, 75%)"
- }
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-trunk_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
+ "id": "landuse_dam",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(209, 212, 190, 1)"
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "tunnel" ], [ "==", "type", "trunk_link" ] ]
+ [
+ "in",
+ "class",
+ "dam"
+ ]
],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-dasharray": [ 3, 3 ]
- }
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landuse"
},
{
- "id": "tunnel-motorway_link-case",
+ "id": "waterway_tunnel",
"type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "motorway_link" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-dasharray": [ 3, 3 ]
- }
- },
- {
- "id": "tunnel-trunk-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "tunnel" ], [ "==", "type", "trunk" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-opacity": 1,
- "line-dasharray": [ 3, 3 ]
- }
- },
- {
- "id": "tunnel-motorway-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "motorway" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-opacity": 1,
- "line-dasharray": [ 3, 3 ]
- }
- },
- {
- "id": "tunnel-construction",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "construction" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-join": "miter" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "line-dasharray": {
- "base": 1,
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.3,
"stops": [
- [ 14, [ 0.4, 0.8 ] ],
- [ 15, [ 0.3, 0.6 ] ],
- [ 16, [ 0.2, 0.3 ] ],
- [ 17, [ 0.2, 0.25 ] ],
- [ 18, [ 0.15, 0.15 ] ]
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 4
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 14,
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway_river",
+ "type": "line",
+ "paint": {
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 11,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
]
}
- }
- },
- {
- "id": "tunnel-path",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
[
- "all",
- [ "==", "class", "path" ],
- [ "==", "structure", "tunnel" ],
- [ "!=", "type", "steps" ]
+ "==",
+ "class",
+ "river"
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "intermittent",
+ 1
]
],
- "layout": { "line-join": "round" },
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway_river_intermittent",
+ "type": "line",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 18, 4 ] ] },
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 1, 0.5 ] ] ]
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 11,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
},
- "line-color": "hsl(35, 26%, 95%)",
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "tunnel-steps",
- "type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ "line-dasharray": [
+ 3,
+ 2
+ ]
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "tunnel" ], [ "==", "type", "steps" ] ]
+ [
+ "==",
+ "class",
+ "river"
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "==",
+ "intermittent",
+ 1
+ ]
],
- "layout": { "line-join": "round" },
+ "layout": {
+ "line-cap": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway_other",
+ "type": "line",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 16, 1.6 ], [ 18, 6 ] ] },
- "line-color": "hsl(35, 26%, 95%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 0.3, 0.3 ] ] ]
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.3,
+ "stops": [
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!=",
+ "class",
+ "river"
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "intermittent",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway_other_intermittent",
+ "type": "line",
+ "paint": {
+ "line-color": "#a0c8f0",
+ "line-width": {
+ "base": 1.3,
+ "stops": [
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
},
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
+ "line-dasharray": [
+ 4,
+ 3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!=",
+ "class",
+ "river"
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "==",
+ "intermittent",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "waterway"
},
{
- "id": "tunnel-trunk_link",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-trunk_link-case",
+ "id": "water_intermittent",
+ "type": "fill",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(46, 77%, 78%)",
- "line-opacity": 1,
- "line-dasharray": [ 1, 0 ]
- }
+ "fill-color": "rgba(172, 218, 251, 1)",
+ "fill-opacity": 0.85
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "intermittent",
+ 1
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "water"
},
{
- "id": "tunnel-motorway_link",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-motorway_link-case",
+ "id": "water",
+ "type": "fill",
"paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(26, 100%, 78%)",
- "line-opacity": 1,
- "line-dasharray": [ 1, 0 ]
- }
+ "fill-color": "rgba(134, 204, 250, 1)"
+ },
+ "filter": [
+ "all",
+ [
+ "!=",
+ "intermittent",
+ 1
+ ],
+ [
+ "!=",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "water"
},
{
- "id": "tunnel-pedestrian",
+ "id": "landcover_sand",
+ "type": "fill",
+ "paint": {
+ "fill-color": "#f2e9ac",
+ "fill-opacity": 1,
+ "fill-antialias": false
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "class",
+ "sand"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landcover"
+ },
+ {
+ "id": "landcover_sand_outline",
"type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
+ "paint": {
+ "line-color": "#f2e9ac",
+ "line-width": 2
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "pedestrian" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": { "base": 1, "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.5, 0.4 ] ], [ 16, [ 1, 0.2 ] ] ] }
- }
- },
- {
- "id": "tunnel-service-link-track",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-service-link-track-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": [ 1, 0 ]
- }
- },
- {
- "id": "tunnel-street_limited",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-street_limited-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(35, 14%, 93%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "tunnel-street",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-street-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "tunnel-secondary-tertiary",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-secondary-tertiary-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": [ 1, 0 ],
- "line-blur": 0
- }
- },
- {
- "id": "tunnel-primary",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-primary-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": [ 1, 0 ],
- "line-blur": 0
- }
- },
- {
- "id": "tunnel-oneway-arrows-blue-minor",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
[
- "all",
- [ "in", "class", "link", "path", "pedestrian", "service", "track" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
+ "in",
+ "class",
+ "sand"
]
],
"layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 17, "oneway-small" ], [ 18, "oneway-large" ] ] },
- "symbol-spacing": 200,
- "icon-padding": 2
+ "visibility": "visible"
},
- "paint": {}
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "landcover"
},
{
- "id": "tunnel-oneway-arrows-blue-major",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
+ "id": "aeroway_fill",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(229, 228, 224, 1)",
+ "fill-opacity": 0.7
+ },
"filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "primary", "secondary", "street", "street_limited", "tertiary" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
- ]
+ "==",
+ "$type",
+ "Polygon"
],
"layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-small" ], [ 17, "oneway-large" ] ] },
- "symbol-spacing": 200,
- "icon-padding": 2
+ "visibility": "visible"
},
- "paint": {}
+ "source": "openmaptiles",
+ "minzoom": 11,
+ "metadata": {},
+ "source-layer": "aeroway"
},
{
- "id": "tunnel-trunk",
+ "id": "aeroway_runway",
"type": "line",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
+ "paint": {
+ "line-color": "#f0ede9",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 11,
+ 3
+ ],
+ [
+ 20,
+ 16
+ ]
+ ]
+ }
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "trunk" ], [ "==", "structure", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(46, 77%, 78%)"
- }
- },
- {
- "id": "tunnel-motorway",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "ref": "tunnel-motorway-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-opacity": 1,
- "line-color": "hsl(26, 100%, 78%)",
- "line-blur": 0
- }
- },
- {
- "id": "tunnel-oneway-arrows-white",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855769305.6016" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
[
- "all",
- [ "in", "class", "link", "motorway", "motorway_link", "trunk" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "tunnel" ],
- [ "!in", "type", "primary_link", "secondary_link", "tertiary_link" ]
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "class",
+ "runway"
]
],
"layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-white-small" ], [ 17, "oneway-white-large" ] ] },
- "symbol-spacing": 200,
- "icon-padding": 2
+ "visibility": "visible"
},
- "paint": {}
+ "source": "openmaptiles",
+ "minzoom": 11,
+ "metadata": {},
+ "source-layer": "aeroway"
+ },
+ {
+ "id": "aeroway_taxiway",
+ "type": "line",
+ "paint": {
+ "line-color": "#f0ede9",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 11,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "class",
+ "taxiway"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 11,
+ "metadata": {},
+ "source-layer": "aeroway"
},
{
"id": "ferry",
"type": "line",
- "source": "composite",
- "source-layer": "road",
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "type", "ferry" ] ],
- "layout": { "line-join": "round" },
"paint": {
- "line-color": { "base": 1, "stops": [ [ 15, "hsl(205, 73%, 63%)" ], [ 17, "hsl(230, 73%, 63%)" ] ] },
- "line-opacity": 1,
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] },
- "line-dasharray": { "base": 1, "stops": [ [ 12, [ 1, 0 ] ], [ 13, [ 12, 4 ] ] ] }
- }
- },
- {
- "id": "ferry_auto",
- "type": "line",
- "source": "composite",
- "source-layer": "road",
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "type", "ferry_auto" ] ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-color": { "base": 1, "stops": [ [ 15, "hsl(205, 73%, 63%)" ], [ 17, "hsl(230, 73%, 63%)" ] ] },
- "line-opacity": 1,
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "road-path-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "path" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!in", "type", "crossing", "sidewalk", "steps" ]
+ "line-color": "rgba(108, 159, 182, 1)",
+ "line-width": 1.1,
+ "line-dasharray": [
+ 2,
+ 2
]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 18, 7 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-color": "hsl(230, 17%, 82%)",
- "line-blur": 0,
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 0.75 ] ] }
- }
- },
- {
- "id": "road-steps-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "!in", "structure", "bridge", "tunnel" ], [ "==", "type", "steps" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 17, 4.6 ], [ 18, 7 ] ] },
- "line-color": "hsl(230, 17%, 82%)",
- "line-dasharray": [ 1, 0 ],
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 0.75 ] ] }
- }
- },
- {
- "id": "road-sidewalk-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "in", "type", "crossing", "sidewalk" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 18, 7 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-color": "hsl(230, 17%, 82%)",
- "line-blur": 0,
- "line-opacity": { "base": 1, "stops": [ [ 16, 0 ], [ 16.25, 0.75 ] ] }
- }
- },
- {
- "id": "turning-features-outline",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "in", "class", "turning_circle", "turning_loop" ] ],
- "layout": {
- "icon-image": "turning-circle-outline",
- "icon-size": { "base": 1.5, "stops": [ [ 14, 0.122 ], [ 18, 0.969 ], [ 20, 1 ] ] },
- "icon-allow-overlap": true,
- "icon-ignore-placement": true,
- "icon-padding": 0,
- "icon-rotation-alignment": "map"
},
- "paint": {}
- },
- {
- "id": "road-pedestrian-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 12,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "pedestrian" ], [ "==", "structure", "none" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 2 ], [ 18, 14.5 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": 0,
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-street-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street" ], [ "==", "structure", "none" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11, 0 ], [ 11.25, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "road-street_limited-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street_limited" ], [ "==", "structure", "none" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11, 0 ], [ 11.25, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "road-service-link-track-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "service", "track" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] }
- }
- },
- {
- "id": "road-street_limited-case",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-street_limited-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-street-case",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-street-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-secondary-tertiary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "secondary", "tertiary" ],
- [ "!in", "structure", "bridge", "tunnel" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.2, "stops": [ [ 10, 0.75 ], [ 18, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 9.99, 0 ], [ 10, 1 ] ] }
- }
- },
- {
- "id": "road-primary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "primary" ], [ "!in", "structure", "bridge", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 9.99, 0 ], [ 10, 1 ] ] }
- }
- },
- {
- "id": "road-motorway_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 10,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "motorway_link" ], [ "!in", "structure", "bridge", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 10.99, 0 ], [ 11, 1 ] ] }
- }
- },
- {
- "id": "road-trunk_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "!in", "structure", "bridge", "tunnel" ], [ "==", "type", "trunk_link" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 10.99, 0 ], [ 11, 1 ] ] }
- }
- },
- {
- "id": "road-trunk-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "trunk" ], [ "!in", "structure", "bridge", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 6, 0 ], [ 6.1, 1 ] ] }
- }
- },
- {
- "id": "road-motorway-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "motorway" ], [ "!in", "structure", "bridge", "tunnel" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "road-construction",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "construction" ], [ "==", "structure", "none" ] ]
- ],
- "layout": { "line-join": "miter" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "line-dasharray": {
- "base": 1,
- "stops": [
- [ 14, [ 0.4, 0.8 ] ],
- [ 15, [ 0.3, 0.6 ] ],
- [ 16, [ 0.2, 0.3 ] ],
- [ 17, [ 0.2, 0.25 ] ],
- [ 18, [ 0.15, 0.15 ] ]
- ]
- }
- }
- },
- {
- "id": "road-sidewalks",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-sidewalk-bg",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 18, 4 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 1, 0.5 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 16, 0 ], [ 16.25, 1 ] ] }
- }
- },
- {
- "id": "road-path",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-path-bg",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 18, 4 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 1, 0.5 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "road-steps",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-steps-bg",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 16, 1.6 ], [ 18, 6 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 0.3, 0.3 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "road-trunk_link",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-trunk_link-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(46, 85%, 67%)",
- "line-opacity": 1
- }
- },
- {
- "id": "road-motorway_link",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-motorway_link-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(26, 100%, 68%)",
- "line-opacity": 1
- }
- },
- {
- "id": "road-pedestrian",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-pedestrian-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": { "base": 1, "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.5, 0.4 ] ], [ 16, [ 1, 0.2 ] ] ] }
- }
- },
- {
- "id": "road-pedestrian-polygon-fill",
- "type": "fill",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 12,
- "filter": [
- "all",
- [ "==", "$type", "Polygon" ],
- [ "all", [ "in", "class", "path", "pedestrian" ], [ "==", "structure", "none" ] ]
- ],
- "layout": {},
- "paint": {
- "fill-color": { "base": 1, "stops": [ [ 16, "hsl(230, 16%, 94%)" ], [ 16.25, "hsl(230, 50%, 98%)" ] ] },
- "fill-outline-color": "hsl(230, 26%, 88%)",
- "fill-opacity": 1
- }
- },
- {
- "id": "road-pedestrian-polygon-pattern",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-pedestrian-polygon-fill",
- "paint": {
- "fill-color": "hsl(0, 0%, 100%)",
- "fill-outline-color": "hsl(35, 10%, 83%)",
- "fill-pattern": "pedestrian-polygon",
- "fill-opacity": { "base": 1, "stops": [ [ 16, 0 ], [ 16.25, 1 ] ] }
- }
- },
- {
- "id": "road-polygon",
- "type": "fill",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 12,
- "filter": [
- "all",
- [ "==", "$type", "Polygon" ],
- [
- "all",
- [ "!in", "class", "motorway", "path", "pedestrian", "trunk" ],
- [ "!in", "structure", "bridge", "tunnel" ]
- ]
- ],
- "layout": {},
- "paint": { "fill-color": "hsl(0, 0%, 100%)", "fill-outline-color": "#d6d9e6" }
- },
- {
- "id": "road-service-link-track",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-service-link-track-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)"
- }
- },
- {
- "id": "road-street_limited",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-street_limited-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(35, 14%, 93%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-street",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-street-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "road-secondary-tertiary",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-secondary-tertiary-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-color": { "base": 1, "stops": [ [ 5, "hsl(35, 32%, 91%)" ], [ 8, "hsl(0, 0%, 100%)" ] ] },
- "line-opacity": { "base": 1.2, "stops": [ [ 5, 0 ], [ 5.5, 1 ] ] }
- }
- },
- {
- "id": "road-primary",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-primary-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": { "base": 1, "stops": [ [ 5, "hsl(35, 32%, 91%)" ], [ 7, "hsl(0, 0%, 100%)" ] ] },
- "line-opacity": 1
- }
- },
- {
- "id": "road-oneway-arrows-blue-minor",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "path", "pedestrian", "service", "track" ],
- [ "==", "oneway", "true" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 17, "oneway-small" ], [ 18, "oneway-large" ] ] },
- "icon-rotation-alignment": "map",
- "icon-padding": 2,
- "symbol-spacing": 200
- },
- "paint": {}
- },
- {
- "id": "road-oneway-arrows-blue-major",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "primary", "secondary", "street", "street_limited", "tertiary" ],
- [ "==", "oneway", "true" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-small" ], [ 17, "oneway-large" ] ] },
- "icon-rotation-alignment": "map",
- "icon-padding": 2,
- "symbol-spacing": 200
- },
- "paint": {}
- },
- {
- "id": "road-trunk",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-trunk-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": {
- "base": 1,
- "stops": [ [ 6, "hsl(0, 0%, 100%)" ], [ 6.1, "hsl(46, 80%, 60%)" ], [ 9, "hsl(46, 85%, 67%)" ] ]
- }
- }
- },
- {
- "id": "road-motorway",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-motorway-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": { "base": 1, "stops": [ [ 8, "hsl(26, 87%, 62%)" ], [ 9, "hsl(26, 100%, 68%)" ] ] }
- }
- },
- {
- "id": "road-rail",
- "type": "line",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "major_rail", "minor_rail" ],
- [ "!in", "structure", "bridge", "tunnel" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-color": { "stops": [ [ 13, "hsl(50, 17%, 82%)" ], [ 16, "hsl(230, 10%, 74%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "road-rail-tracks",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "ref": "road-rail",
- "paint": {
- "line-color": { "stops": [ [ 13, "hsl(50, 17%, 82%)" ], [ 16, "hsl(230, 10%, 74%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 14, 4 ], [ 20, 8 ] ] },
- "line-dasharray": [ 0.1, 15 ],
- "line-opacity": { "base": 1, "stops": [ [ 13.75, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "level-crossings",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "==", "class", "level_crossing" ] ],
- "layout": { "icon-size": 1, "icon-image": "level-crossing", "icon-allow-overlap": true },
- "paint": {}
- },
- {
- "id": "road-oneway-arrows-white",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "motorway", "motorway_link", "trunk" ],
- [ "==", "oneway", "true" ],
- [ "!in", "structure", "bridge", "tunnel" ],
- [ "!in", "type", "primary_link", "secondary_link", "tertiary_link" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-white-small" ], [ 17, "oneway-white-large" ] ] },
- "icon-padding": 2,
- "symbol-spacing": 200
- },
- "paint": {}
- },
- {
- "id": "turning-features",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855786460.0557" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "in", "class", "turning_circle", "turning_loop" ] ],
- "layout": {
- "icon-image": "turning-circle",
- "icon-size": { "base": 1.5, "stops": [ [ 14, 0.095 ], [ 18, 1 ] ] },
- "icon-allow-overlap": true,
- "icon-ignore-placement": true,
- "icon-padding": 0,
- "icon-rotation-alignment": "map"
- },
- "paint": {}
- },
- {
- "id": "bridge-path-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "path" ],
- [ "==", "structure", "bridge" ],
- [ "!=", "type", "steps" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 18, 7 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-color": "hsl(230, 17%, 82%)",
- "line-blur": 0,
- "line-opacity": { "base": 1, "stops": [ [ 15, 0 ], [ 15.25, 1 ] ] }
- }
- },
- {
- "id": "bridge-steps-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "bridge" ], [ "==", "type", "steps" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 2 ], [ 17, 4.6 ], [ 18, 7 ] ] },
- "line-color": "hsl(230, 17%, 82%)",
- "line-dasharray": [ 1, 0 ],
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 0.75 ] ] }
- }
- },
- {
- "id": "bridge-pedestrian-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "pedestrian" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 2 ], [ 18, 14.5 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": 0,
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "bridge-street-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11.5, 0 ], [ 12, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "bridge-street_limited-low",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street_limited" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "stops": [ [ 11.5, 0 ], [ 12, 1 ], [ 14, 1 ], [ 14.01, 0 ] ] }
- }
- },
- {
- "id": "bridge-service-link-track-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "service", "track" ],
- [ "==", "structure", "bridge" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] }
- }
- },
- {
- "id": "bridge-street_limited-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street_limited" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] }
- }
- },
- {
- "id": "bridge-street-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 11,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "street" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "line-gap-width": { "base": 1.5, "stops": [ [ 13, 0 ], [ 14, 2 ], [ 18, 18 ] ] }
- }
- },
- {
- "id": "bridge-secondary-tertiary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "in", "class", "secondary", "tertiary" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.2, "stops": [ [ 10, 0.75 ], [ 18, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-translate": [ 0, 0 ]
- }
- },
- {
- "id": "bridge-primary-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "primary" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-translate": [ 0, 0 ]
- }
- },
- {
- "id": "bridge-trunk_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ],
- [ "==", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 10.99, 0 ], [ 11, 1 ] ] }
- }
- },
- {
- "id": "bridge-motorway_link-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway_link" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": 1
- }
- },
- {
- "id": "bridge-trunk-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "trunk" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "bridge-motorway-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "bridge-construction",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "class", "construction" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "miter" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(230, 24%, 87%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "line-dasharray": {
- "base": 1,
- "stops": [
- [ 14, [ 0.4, 0.8 ] ],
- [ 15, [ 0.3, 0.6 ] ],
- [ 16, [ 0.2, 0.3 ] ],
- [ 17, [ 0.2, 0.25 ] ],
- [ 18, [ 0.15, 0.15 ] ]
- ]
- }
- }
- },
- {
- "id": "bridge-path",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "path" ],
- [ "==", "structure", "bridge" ],
- [ "!=", "type", "steps" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 18, 4 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 1, 0.5 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "bridge-steps",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-steps-bg",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 15, 1 ], [ 16, 1.6 ], [ 18, 6 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-dasharray": {
- "base": 1,
- "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.75, 1 ] ], [ 16, [ 1, 0.75 ] ], [ 17, [ 0.3, 0.3 ] ] ]
- },
- "line-opacity": { "base": 1, "stops": [ [ 14, 0 ], [ 14.25, 1 ] ] }
- }
- },
- {
- "id": "bridge-trunk_link",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ],
- [ "==", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(46, 85%, 67%)"
- }
- },
- {
- "id": "bridge-motorway_link",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway_link" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(26, 100%, 68%)"
- }
- },
- {
- "id": "bridge-pedestrian",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-pedestrian-case",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1,
- "line-dasharray": { "base": 1, "stops": [ [ 14, [ 1, 0 ] ], [ 15, [ 1.5, 0.4 ] ], [ 16, [ 1, 0.2 ] ] ] }
- }
- },
- {
- "id": "bridge-service-link-track",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 14,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "service", "track" ],
- [ "==", "structure", "bridge" ],
- [ "!=", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 18, 12 ] ] },
- "line-color": "hsl(0, 0%, 100%)"
- }
- },
- {
- "id": "bridge-street_limited",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-street_limited-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(35, 14%, 93%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "bridge-street",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-street-low",
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12.5, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] }
- }
- },
- {
- "id": "bridge-secondary-tertiary",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "bridge" ], [ "in", "type", "secondary", "tertiary" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 8.5, 0.5 ], [ 10, 0.75 ], [ 18, 26 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": { "base": 1.2, "stops": [ [ 5, 0 ], [ 5.5, 1 ] ] }
- }
- },
- {
- "id": "bridge-primary",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "==", "structure", "bridge" ], [ "==", "type", "primary" ] ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-opacity": 1
- }
- },
- {
- "id": "bridge-oneway-arrows-blue-minor",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "path", "pedestrian", "service", "track" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 17, "oneway-small" ], [ 18, "oneway-large" ] ] },
- "symbol-spacing": 200,
- "icon-rotation-alignment": "map",
- "icon-padding": 2
- },
- "paint": {}
- },
- {
- "id": "bridge-oneway-arrows-blue-major",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 15,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "primary", "secondary", "street", "street_limited", "tertiary" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-small" ], [ 17, "oneway-large" ] ] },
- "symbol-spacing": 200,
- "icon-rotation-alignment": "map",
- "icon-padding": 2
- },
- "paint": {}
- },
- {
- "id": "bridge-trunk",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "trunk" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(46, 85%, 67%)"
- }
- },
- {
- "id": "bridge-motorway",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway" ],
- [ "!in", "layer", 2, 3, 4, 5 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(26, 100%, 68%)"
- }
- },
- {
- "id": "bridge-rail",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [ "all", [ "in", "class", "major_rail", "minor_rail" ], [ "==", "structure", "bridge" ] ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-color": { "stops": [ [ 13, "hsl(50, 17%, 82%)" ], [ 16, "hsl(230, 10%, 74%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "bridge-rail-tracks",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "ref": "bridge-rail",
- "paint": {
- "line-color": { "stops": [ [ 13, "hsl(50, 17%, 82%)" ], [ 16, "hsl(230, 10%, 74%)" ] ] },
- "line-width": { "base": 1.5, "stops": [ [ 14, 4 ], [ 20, 8 ] ] },
- "line-dasharray": [ 0.1, 15 ],
- "line-opacity": { "base": 1, "stops": [ [ 13.75, 0 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "bridge-trunk_link-2-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ],
- [ "==", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 10.99, 0 ], [ 11, 1 ] ] }
- }
- },
- {
- "id": "bridge-motorway_link-2-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway_link" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.75 ], [ 20, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-opacity": 1
- }
- },
- {
- "id": "bridge-trunk-2-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "trunk" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "bridge-motorway-2-case",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 10, 1 ], [ 16, 2 ] ] },
- "line-color": "hsl(0, 0%, 100%)",
- "line-gap-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] }
- }
- },
- {
- "id": "bridge-trunk_link-2",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ],
- [ "==", "type", "trunk_link" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(46, 85%, 67%)"
- }
- },
- {
- "id": "bridge-motorway_link-2",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway_link" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 12, 0.5 ], [ 14, 2 ], [ 18, 18 ] ] },
- "line-color": "hsl(26, 100%, 68%)"
- }
- },
- {
- "id": "bridge-trunk-2",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "trunk" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(46, 85%, 67%)"
- }
- },
- {
- "id": "bridge-motorway-2",
- "type": "line",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "==", "class", "motorway" ],
- [ ">=", "layer", 2 ],
- [ "==", "structure", "bridge" ]
- ]
- ],
- "layout": { "line-cap": "round", "line-join": "round" },
- "paint": {
- "line-width": { "base": 1.5, "stops": [ [ 5, 0.75 ], [ 18, 32 ] ] },
- "line-color": "hsl(26, 100%, 68%)"
- }
- },
- {
- "id": "bridge-oneway-arrows-white",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444855799204.86" },
- "source": "composite",
- "source-layer": "road",
- "minzoom": 16,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "all",
- [ "in", "class", "link", "motorway", "motorway_link", "trunk" ],
- [ "==", "oneway", "true" ],
- [ "==", "structure", "bridge" ],
- [ "!in", "type", "primary_link", "secondary_link", "tertiary_link" ]
- ]
- ],
- "layout": {
- "symbol-placement": "line",
- "icon-image": { "base": 1, "stops": [ [ 16, "oneway-white-small" ], [ 17, "oneway-white-large" ] ] },
- "symbol-spacing": 200,
- "icon-padding": 2
- },
- "paint": {}
- },
- {
- "id": "aerialway",
- "type": "line",
- "source": "composite",
- "source-layer": "road",
- "minzoom": 13,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "class", "aerialway" ] ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-color": "hsl(230, 10%, 74%)",
- "line-width": { "base": 1.5, "stops": [ [ 14, 0.5 ], [ 20, 1 ] ] }
- }
- },
- {
- "id": "admin-3-4-boundaries-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "filter": [ "all", [ ">=", "admin_level", 3 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "bevel" },
- "paint": {
- "line-color": { "base": 1, "stops": [ [ 8, "hsl(35, 12%, 89%)" ], [ 16, "hsl(230, 49%, 90%)" ] ] },
- "line-width": { "base": 1, "stops": [ [ 7, 3.75 ], [ 12, 5.5 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 7, 0 ], [ 8, 0.75 ] ] },
- "line-dasharray": [ 1, 0 ],
- "line-translate": [ 0, 0 ],
- "line-blur": { "base": 1, "stops": [ [ 3, 0 ], [ 8, 3 ] ] }
- }
- },
- {
- "id": "admin-2-boundaries-bg",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "minzoom": 1,
- "filter": [ "all", [ "==", "admin_level", 2 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "miter" },
- "paint": {
- "line-width": { "base": 1, "stops": [ [ 3, 3.5 ], [ 10, 8 ] ] },
- "line-color": { "base": 1, "stops": [ [ 6, "hsl(35, 12%, 89%)" ], [ 8, "hsl(230, 49%, 90%)" ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 3, 0 ], [ 4, 0.5 ] ] },
- "line-translate": [ 0, 0 ],
- "line-blur": { "base": 1, "stops": [ [ 3, 0 ], [ 10, 2 ] ] }
- }
- },
- {
- "id": "admin-3-4-boundaries",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "filter": [ "all", [ ">=", "admin_level", 3 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "round", "line-cap": "round" },
- "paint": {
- "line-dasharray": { "base": 1, "stops": [ [ 6, [ 2, 0 ] ], [ 7, [ 2, 2, 6, 2 ] ] ] },
- "line-width": { "base": 1, "stops": [ [ 7, 0.75 ], [ 12, 1.5 ] ] },
- "line-opacity": { "base": 1, "stops": [ [ 2, 0 ], [ 3, 1 ] ] },
- "line-color": { "base": 1, "stops": [ [ 3, "hsl(230, 14%, 77%)" ], [ 7, "hsl(230, 8%, 62%)" ] ] }
- }
- },
- {
- "id": "admin-2-boundaries",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "minzoom": 1,
- "filter": [ "all", [ "==", "admin_level", 2 ], [ "==", "disputed", 0 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "round", "line-cap": "round" },
- "paint": {
- "line-color": "hsl(230, 8%, 51%)",
- "line-width": { "base": 1, "stops": [ [ 3, 0.5 ], [ 10, 2 ] ] }
- }
- },
- {
- "id": "admin-2-boundaries-dispute",
- "type": "line",
- "metadata": { "mapbox:group": "1444934295202.7542" },
- "source": "composite",
- "source-layer": "admin",
- "minzoom": 1,
- "filter": [ "all", [ "==", "admin_level", 2 ], [ "==", "disputed", 1 ], [ "==", "maritime", 0 ] ],
- "layout": { "line-join": "round" },
- "paint": {
- "line-dasharray": [ 1.5, 1.5 ],
- "line-color": "hsl(230, 8%, 51%)",
- "line-width": { "base": 1, "stops": [ [ 3, 0.5 ], [ 10, 2 ] ] }
- }
- },
- {
- "id": "housenum-label",
- "type": "symbol",
- "source": "composite",
- "source-layer": "housenum_label",
- "minzoom": 17,
- "layout": {
- "text-field": "{house_num}",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-padding": 4,
- "text-max-width": 7,
- "text-size": 9.5
- },
- "paint": {
- "text-color": "hsl(35, 2%, 69%)",
- "text-halo-color": "hsl(35, 8%, 85%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0
- }
- },
- {
- "id": "waterway-label",
- "type": "symbol",
- "source": "composite",
- "source-layer": "waterway_label",
- "minzoom": 12,
- "filter": [ "in", "class", "canal", "river" ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-max-angle": 30,
- "text-size": { "base": 1, "stops": [ [ 13, 12 ], [ 18, 16 ] ] }
- },
- "paint": {
- "text-halo-width": 0.5,
- "text-halo-color": "hsl(196, 80%, 70%)",
- "text-color": "hsl(230, 48%, 44%)",
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-scalerank4-l15",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933456003.5437" },
- "source": "composite",
- "source-layer": "poi_label",
- "minzoom": 17,
- "filter": [
- "all",
- [ ">=", "localrank", 15 ],
- [
- "!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 4 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-scalerank4-l1",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933456003.5437" },
- "source": "composite",
- "source-layer": "poi_label",
- "minzoom": 15,
- "filter": [
- "all",
- [ "<=", "localrank", 14 ],
- [
- "!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 4 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 1,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-parks_scalerank4",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933456003.5437" },
- "source": "composite",
- "source-layer": "poi_label",
- "minzoom": 15,
"filter": [
"all",
[
"in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 4 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 1,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(100, 100%, 20%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-scalerank3",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933372896.5967" },
- "source": "composite",
- "source-layer": "poi_label",
- "filter": [
- "all",
- [
- "!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 3 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 1,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-parks-scalerank3",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933372896.5967" },
- "source": "composite",
- "source-layer": "poi_label",
- "filter": [
- "all",
- [
- "in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
- ],
- [ "==", "scalerank", 3 ]
- ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{maki}-11",
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
- },
- "paint": {
- "text-color": "hsl(100, 100%, 20%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "road-label-small",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933721429.3076" },
- "source": "composite",
- "source-layer": "road_label",
- "minzoom": 15,
- "filter": [
- "all",
- [ "==", "$type", "LineString" ],
- [
- "!in",
"class",
- "link",
- "motorway",
- "pedestrian",
- "primary",
- "secondary",
+ "ferry"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_motorway_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_service_track_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15,
+ 1
+ ],
+ [
+ 16,
+ 4
+ ],
+ [
+ 20,
+ 11
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "ramp",
+ "1"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ ">",
+ "layer",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_street_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 0.5
+ ],
+ [
+ 13,
+ 1
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": {
+ "stops": [
+ [
+ 12,
+ 0
+ ],
+ [
+ 12.5,
+ 1
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
"street",
- "street_limited",
- "tertiary",
+ "street_limited"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_secondary_tertiary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(195, 189, 187, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 8,
+ 1.5
+ ],
+ [
+ 20,
+ 17
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_trunk_primary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "primary",
"trunk"
]
],
"layout": {
- "text-size": { "base": 1, "stops": [ [ 15, 10 ], [ 20, 13 ] ] },
- "text-max-angle": 30,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-padding": 1,
- "text-rotation-alignment": "map",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "text-halo-blur": 1
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "road-label-medium",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933721429.3076" },
- "source": "composite",
- "source-layer": "road_label",
- "minzoom": 11,
+ "id": "tunnel_motorway_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.5,
+ 0.25
+ ]
+ },
"filter": [
"all",
- [ "==", "$type", "LineString" ],
- [ "in", "class", "link", "pedestrian", "street", "street_limited" ]
- ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 11, 10 ], [ 20, 14 ] ] },
- "text-max-angle": 30,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-padding": 1,
- "text-rotation-alignment": "map",
- "text-field": ["format", ["get", "name_en"], {"text-color": "green"}],
- "text-letter-spacing": 0.01
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
- },
- {
- "id": "road-label-large",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933721429.3076" },
- "source": "composite",
- "source-layer": "road_label",
- "filter": [ "in", "class", "motorway", "primary", "secondary", "tertiary", "trunk" ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 9, 10 ], [ 20, 16 ] ] },
- "text-max-angle": 30,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-padding": 1,
- "text-rotation-alignment": "map",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsla(0, 0%, 100%, 0.75)",
- "text-halo-width": 1,
- "text-halo-blur": 1
- }
- },
- {
- "id": "road-shields-black",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933575858.6992" },
- "source": "composite",
- "source-layer": "road_label",
- "filter": [
- "all",
- [ "<=", "reflen", 6 ],
[
- "!in",
- "shield",
- "at-expressway",
- "at-motorway",
- "at-state-b",
- "bg-motorway",
- "bg-national",
- "ch-main",
- "ch-motorway",
- "cz-motorway",
- "cz-road",
- "de-motorway",
- "e-road",
- "fi-main",
- "gr-motorway",
- "gr-national",
- "hr-motorway",
- "hr-state",
- "hu-main",
- "hu-motorway",
- "nz-state",
- "pl-expressway",
- "pl-motorway",
- "pl-national",
- "ro-county",
- "ro-motorway",
- "ro-national",
- "rs-motorway",
- "rs-state-1b",
- "se-main",
- "si-expressway",
- "si-motorway",
- "sk-highway",
- "sk-road",
- "us-interstate",
- "us-interstate-business",
- "us-interstate-duplex",
- "us-interstate-truck",
- "za-metropolitan",
- "za-national",
- "za-provincial",
- "za-regional"
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
]
],
"layout": {
- "text-size": 9,
- "icon-image": "{shield}-{reflen}",
- "icon-rotation-alignment": "viewport",
- "text-max-angle": 38,
- "symbol-spacing": { "base": 1, "stops": [ [ 11, 150 ], [ 14, 200 ] ] },
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "symbol-placement": { "base": 1, "stops": [ [ 10, "point" ], [ 11, "line" ] ] },
- "text-padding": 2,
- "text-rotation-alignment": "viewport",
- "text-field": "{ref}",
- "text-letter-spacing": 0.05,
- "icon-padding": 2
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(0, 0%, 7%)",
- "icon-halo-color": "rgba(0, 0, 0, 1)",
- "icon-halo-width": 1,
- "text-opacity": 1,
- "icon-color": "white",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "road-shields-white",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933575858.6992" },
- "source": "composite",
- "source-layer": "road_label",
+ "id": "tunnel_path_pedestrian",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(204, 196, 176, 0.45)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 14,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 1,
+ 0.75
+ ]
+ },
"filter": [
"all",
- [ "<=", "reflen", 6 ],
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
[
"in",
- "shield",
- "at-expressway",
- "at-motorway",
- "at-state-b",
- "bg-motorway",
- "bg-national",
- "ch-main",
- "ch-motorway",
- "cz-motorway",
- "cz-road",
- "de-motorway",
- "e-road",
- "fi-main",
- "gr-motorway",
- "gr-national",
- "hr-motorway",
- "hr-state",
- "hu-main",
- "hu-motorway",
- "nz-state",
- "pl-expressway",
- "pl-motorway",
- "pl-national",
- "ro-county",
- "ro-motorway",
- "ro-national",
- "rs-motorway",
- "rs-state-1b",
- "se-main",
- "si-expressway",
- "si-motorway",
- "sk-highway",
- "sk-road",
- "us-interstate",
- "us-interstate-business",
- "us-interstate-duplex",
- "us-interstate-truck",
- "za-metropolitan",
- "za-national",
- "za-provincial",
- "za-regional"
+ "class",
+ "path",
+ "pedestrian"
]
],
"layout": {
- "text-size": 9,
- "icon-image": "{shield}-{reflen}",
- "icon-rotation-alignment": "viewport",
- "text-max-angle": 38,
- "symbol-spacing": { "base": 1, "stops": [ [ 11, 150 ], [ 14, 200 ] ] },
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "symbol-placement": { "base": 1, "stops": [ [ 10, "point" ], [ 11, "line" ] ] },
- "text-padding": 2,
- "text-rotation-alignment": "viewport",
- "text-field": "{ref}",
- "text-letter-spacing": 0.05,
- "icon-padding": 2
+ "visibility": "visible"
},
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_motorway_link",
+ "type": "line",
"paint": {
- "text-color": "hsl(0, 0%, 100%)",
- "icon-halo-color": "rgba(0, 0, 0, 1)",
- "icon-halo-width": 1,
- "text-opacity": 1,
- "icon-color": "white",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0
- }
- },
- {
- "id": "motorway-junction",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933575858.6992" },
- "source": "composite",
- "source-layer": "motorway_junction",
- "minzoom": 14,
- "filter": [ "all", [ ">", "reflen", 0 ], [ "<=", "reflen", 9 ] ],
- "layout": {
- "text-field": "{ref}",
- "text-size": 9,
- "icon-image": "motorway-exit-{reflen}",
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ]
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
},
- "paint": { "text-color": "hsl(0, 0%, 100%)", "text-translate": [ 0, 0 ] }
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway_link"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "poi-scalerank2",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933358918.2366" },
- "source": "composite",
- "source-layer": "poi_label",
+ "id": "tunnel_service_track",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_service_track_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service_construction",
+ "track_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff4c6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "ramp",
+ "1"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ ">",
+ "layer",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_minor",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_minor_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_secondary_tertiary",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(245, 245, 243, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_secondary_tertiary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary_construction",
+ "tertiary_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_trunk_primary",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff4c6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_trunk_primary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff4c6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "primary_construction",
+ "trunk_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_motorway",
+ "type": "line",
+ "paint": {
+ "line-color": "#ffdaa6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_motorway_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#ffdaa6",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway_construction"
+ ],
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_major_rail",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14,
+ 0.4
+ ],
+ [
+ 15,
+ 0.75
+ ],
+ [
+ 20,
+ 2
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "rail"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "tunnel_major_rail_hatching",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14.5,
+ 0
+ ],
+ [
+ 15,
+ 3
+ ],
+ [
+ 20,
+ 8
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.2,
+ 8
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "rail"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_area_pier",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(246, 241, 229, 1)",
+ "fill-antialias": true
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Polygon"
+ ],
+ [
+ "==",
+ "class",
+ "pier"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_pier",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(246, 241, 229, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15,
+ 1
+ ],
+ [
+ 17,
+ 4
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "in",
+ "class",
+ "pier"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_area_bridge",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(246, 241, 229, 0.6)",
+ "fill-antialias": true
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Polygon"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_area_pattern",
+ "type": "fill",
+ "paint": {
+ "fill-pattern": "pedestrian_polygon"
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Polygon"
+ ],
+ [
+ "!has",
+ "brunnel"
+ ],
+ [
+ "!in",
+ "class",
+ "bridge",
+ "pier"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_service_track_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15,
+ 1
+ ],
+ [
+ 16,
+ 4
+ ],
+ [
+ 20,
+ 11
+ ]
+ ]
+ }
+ },
"filter": [
"all",
[
"!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
+ "brunnel",
+ "bridge",
+ "tunnel"
],
- [ "==", "scalerank", 2 ]
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 14, 11 ], [ 20, 14 ] ] },
- "icon-image": { "stops": [ [ 14, "{maki}-11" ], [ 15, "{maki}-15" ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
+ "line-cap": "round",
+ "line-join": "round"
},
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "poi-parks-scalerank2",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933358918.2366" },
- "source": "composite",
- "source-layer": "poi_label",
+ "id": "road_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
"filter": [
"all",
[
- "in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
],
- [ "==", "scalerank", 2 ]
+ [
+ "!in",
+ "class",
+ "motorway",
+ "trunk",
+ "primary",
+ "pedestrian",
+ "path",
+ "track",
+ "service"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ]
],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 14, 11 ], [ 20, 14 ] ] },
- "icon-image": { "stops": [ [ 14, "{maki}-11" ], [ 15, "{maki}-15" ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(100, 100%, 20%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "minzoom": 13,
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "rail-label",
- "type": "symbol",
- "source": "composite",
- "source-layer": "rail_station_label",
+ "id": "road_trunk_primary_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 0.7
+ ],
+ [
+ 20,
+ 14
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-cap": "butt",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "butt",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
"minzoom": 12,
- "filter": [ "!=", "maki", "entrance" ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 16, 11 ], [ 20, 13 ] ] },
- "icon-image": "{network}",
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-offset": [ 0, 0.85 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": { "base": 1, "stops": [ [ 0, "" ], [ 13, "{name_en}" ] ] },
- "text-letter-spacing": 0.01,
- "icon-padding": 0,
- "text-max-width": 7
- },
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor_casing",
+ "type": "line",
"paint": {
- "text-color": "hsl(230, 48%, 44%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "icon-halo-width": 4,
- "icon-halo-color": "#fff",
- "text-opacity": { "base": 1, "stops": [ [ 13.99, 0 ], [ 14, 1 ] ] },
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "water-label-sm",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933808272.805" },
- "source": "composite",
- "source-layer": "water_label",
- "minzoom": 15,
- "filter": [ "<=", "area", 10000 ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-max-width": 7,
- "text-size": { "base": 1, "stops": [ [ 16, 13 ], [ 20, 16 ] ] }
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 0.5
+ ],
+ [
+ 13,
+ 1
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 20
+ ]
+ ]
+ },
+ "line-opacity": {
+ "stops": [
+ [
+ 12,
+ 0
+ ],
+ [
+ 12.5,
+ 1
+ ]
+ ]
+ }
},
- "paint": { "text-color": "hsl(230, 48%, 44%)" }
- },
- {
- "id": "water-label",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933808272.805" },
- "source": "composite",
- "source-layer": "water_label",
- "minzoom": 5,
- "filter": [ ">", "area", 10000 ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-max-width": 7,
- "text-size": { "base": 1, "stops": [ [ 13, 13 ], [ 18, 18 ] ] }
- },
- "paint": { "text-color": "hsl(230, 48%, 44%)" }
- },
- {
- "id": "place-residential",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 18,
- "filter": [
- "all",
- [ "in", "$type", "LineString", "Point", "Polygon" ],
- [ "all", [ "<=", "localrank", 10 ], [ "==", "type", "residential" ] ]
- ],
- "layout": {
- "text-line-height": 1.2,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 14 ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0 ],
- "text-rotation-alignment": "viewport",
- "text-field": "{name_en}",
- "text-max-width": 7
- },
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "poi-parks-scalerank1",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933322393.2852" },
- "source": "composite",
- "source-layer": "poi_label",
"filter": [
"all",
[
- "in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
+ "==",
+ "$type",
+ "LineString"
],
- [ "<=", "scalerank", 1 ]
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor"
+ ],
+ [
+ "!=",
+ "ramp",
+ "1"
+ ]
],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 14 ] ] },
- "icon-image": { "stops": [ [ 13, "{maki}-11" ], [ 14, "{maki}-15" ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(100, 100%, 20%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "poi-scalerank1",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444933322393.2852" },
- "source": "composite",
- "source-layer": "poi_label",
+ "id": "road_secondary_tertiary_casing-copy",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(195, 189, 187, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 8,
+ 1.5
+ ],
+ [
+ 20,
+ 17
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
"filter": [
"all",
[
"!in",
- "maki",
- "campsite",
- "cemetery",
- "dog-park",
- "garden",
- "golf",
- "park",
- "picnic-site",
- "playground",
- "zoo"
+ "brunnel",
+ "bridge",
+ "tunnel"
],
- [ "<=", "scalerank", 1 ]
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 14 ] ] },
- "icon-image": { "stops": [ [ 13, "{maki}-11" ], [ 14, "{maki}-15" ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.65 ],
- "text-rotation-alignment": "viewport",
- "text-anchor": "top",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 8
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
},
- "paint": {
- "text-color": "hsl(26, 25%, 32%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
},
{
- "id": "airport-label",
- "type": "symbol",
- "source": "composite",
- "source-layer": "airport_label",
- "minzoom": 9,
- "filter": [ "<=", "scalerank", 2 ],
+ "id": "road_trunk_primary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
"layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 10, 12 ], [ 18, 18 ] ] },
- "icon-image": { "stops": [ [ 12, "{maki}-11" ], [ 13, "{maki}-15" ] ] },
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-padding": 2,
- "text-offset": [ 0, 0.75 ],
- "text-rotation-alignment": "viewport",
+ "line-cap": "butt",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "butt",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_path_pedestrian",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(204, 196, 176, 0.45)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 14,
+ 1
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 1,
+ 1
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "path",
+ "pedestrian"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 14,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "!in",
+ "class",
+ "motorway",
+ "trunk",
+ "primary",
+ "pedestrian",
+ "path",
+ "track",
+ "service"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 13,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_trunk_primary_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 0.5
+ ],
+ [
+ 20,
+ 10
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 12,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_service_track",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_service_track_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "service_construction",
+ "track_construction"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor"
+ ]
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "minor_construction"
+ ]
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_secondary_tertiary",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(245, 245, 243, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_secondary_tertiary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "secondary_construction",
+ "tertiary_construction"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_trunk_primary",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_trunk_primary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "primary_construction",
+ "trunk_construction"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway",
+ "type": "line",
+ "paint": {
+ "line-color": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ "hsl(26, 87%, 62%)"
+ ],
+ [
+ 6,
+ "#fc8"
+ ]
+ ]
+ },
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_motorway_construction",
+ "type": "line",
+ "paint": {
+ "line-color": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ "hsl(26, 87%, 62%)"
+ ],
+ [
+ 6,
+ "#fc8"
+ ]
+ ]
+ },
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "motorway_construction"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_major_rail",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14,
+ 0.4
+ ],
+ [
+ 15,
+ 0.75
+ ],
+ [
+ 20,
+ 2
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "class",
+ "rail"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_major_rail_hatching",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14.5,
+ 0
+ ],
+ [
+ 15,
+ 3
+ ],
+ [
+ 20,
+ 8
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.2,
+ 8
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "==",
+ "class",
+ "rail"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor_rail",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14,
+ 0.4
+ ],
+ [
+ 15,
+ 0.75
+ ],
+ [
+ 20,
+ 2
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "subclass",
+ "tram",
+ "light_rail"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_minor_rail_hatching",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14.5,
+ 0
+ ],
+ [
+ 15,
+ 2
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.2,
+ 4
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "!in",
+ "brunnel",
+ "bridge",
+ "tunnel"
+ ],
+ [
+ "in",
+ "subclass",
+ "tram",
+ "light_rail"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "building",
+ "type": "fill",
+ "paint": {
+ "fill-color": "rgba(189, 185, 181, 0.3)",
+ "fill-outline-color": {
+ "base": 1,
+ "stops": [
+ [
+ 13,
+ "hsla(35, 6%, 79%, 0.32)"
+ ],
+ [
+ 14,
+ "hsl(35, 6%, 79%)"
+ ]
+ ]
+ }
+ },
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 14,
+ "minzoom": 13,
+ "metadata": {},
+ "source-layer": "building"
+ },
+ {
+ "id": "building-3d",
+ "type": "fill-extrusion",
+ "paint": {
+ "fill-extrusion-base": {
+ "type": "identity",
+ "property": "render_min_height"
+ },
+ "fill-extrusion-color": "rgba(189, 185, 181, 1)",
+ "fill-extrusion-height": {
+ "type": "identity",
+ "property": "render_height"
+ },
+ "fill-extrusion-opacity": 0.3
+ },
+ "filter": [
+ "all",
+ [
+ "!has",
+ "hide_3d"
+ ]
+ ],
+ "layout": {
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 14,
+ "metadata": {},
+ "source-layer": "building"
+ },
+ {
+ "id": "waterway-bridge-case",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbbbbb",
+ "line-width": {
+ "base": 1.6,
+ "stops": [
+ [
+ 12,
+ 0.5
+ ],
+ [
+ 20,
+ 5
+ ]
+ ]
+ },
+ "line-gap-width": {
+ "base": 1.3,
+ "stops": [
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-cap": "butt",
+ "line-join": "miter"
+ },
+ "source": "openmaptiles",
+ "source-layer": "waterway"
+ },
+ {
+ "id": "waterway-bridge",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(134, 204, 250, 1)",
+ "line-width": {
+ "base": 1.3,
+ "stops": [
+ [
+ 13,
+ 0.5
+ ],
+ [
+ 20,
+ 6
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "source-layer": "waterway"
+ },
+ {
+ "id": "bridge_motorway_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_service_track_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#cfcdca",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15,
+ 1
+ ],
+ [
+ 16,
+ 4
+ ],
+ [
+ 20,
+ 11
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_link_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 1
+ ],
+ [
+ 13,
+ 3
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 15
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "link"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_street_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(36, 6%, 74%)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 0.5
+ ],
+ [
+ 13,
+ 1
+ ],
+ [
+ 14,
+ 4
+ ],
+ [
+ 20,
+ 25
+ ]
+ ]
+ },
+ "line-opacity": {
+ "stops": [
+ [
+ 12,
+ 0
+ ],
+ [
+ 12.5,
+ 1
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "street",
+ "street_limited"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_path_pedestrian_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(35, 6%, 80%)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 14,
+ 1.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 1,
+ 0
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "path",
+ "pedestrian"
+ ]
+ ],
+ "layout": {
+ "line-join": "miter",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_secondary_tertiary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(195, 189, 187, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 8,
+ 1.5
+ ],
+ [
+ 20,
+ 17
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_trunk_primary_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_motorway_casing",
+ "type": "line",
+ "paint": {
+ "line-color": "#e9ac77",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0.4
+ ],
+ [
+ 6,
+ 0.7
+ ],
+ [
+ 7,
+ 1.75
+ ],
+ [
+ 20,
+ 22
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_path_pedestrian",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(0, 0%, 100%)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 14,
+ 0.5
+ ],
+ [
+ 20,
+ 10
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 1,
+ 0.3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "path",
+ "pedestrian"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_motorway_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "ramp",
+ 1
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_service_track",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "service",
+ "track"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_service_track_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 15.5,
+ 0
+ ],
+ [
+ 16,
+ 2
+ ],
+ [
+ 20,
+ 7.5
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "service_construction",
+ "track_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_link",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12.5,
+ 0
+ ],
+ [
+ 13,
+ 1.5
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 11.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "link"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_minor",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "minor"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_minor_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 13.5,
+ 0
+ ],
+ [
+ 14,
+ 2.5
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "minor_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_secondary_tertiary",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(245, 245, 243, 1)",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "secondary",
+ "tertiary"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_secondary_tertiary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fff",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 6.5,
+ 0
+ ],
+ [
+ 8,
+ 0.5
+ ],
+ [
+ 20,
+ 13
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "secondary_construction",
+ "tertiary_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_trunk_primary",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "primary",
+ "trunk"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_trunk_primary_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fea",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "in",
+ "class",
+ "primary_construction",
+ "trunk_construction"
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_motorway",
+ "type": "line",
+ "paint": {
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_motorway_construction",
+ "type": "line",
+ "paint": {
+ "line-color": "#fc8",
+ "line-width": {
+ "base": 1.2,
+ "stops": [
+ [
+ 5,
+ 0
+ ],
+ [
+ 7,
+ 1
+ ],
+ [
+ 20,
+ 18
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 2
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "motorway_construction"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ],
+ [
+ "!=",
+ "ramp",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-join": "round"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_major_rail",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14,
+ 0.4
+ ],
+ [
+ 15,
+ 0.75
+ ],
+ [
+ 20,
+ 2
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "rail"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "bridge_major_rail_hatching",
+ "type": "line",
+ "paint": {
+ "line-color": "#bbb",
+ "line-width": {
+ "base": 1.4,
+ "stops": [
+ [
+ 14.5,
+ 0
+ ],
+ [
+ 15,
+ 3
+ ],
+ [
+ 20,
+ 8
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 0.2,
+ 8
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "rail"
+ ],
+ [
+ "==",
+ "brunnel",
+ "bridge"
+ ]
+ ],
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation"
+ },
+ {
+ "id": "cablecar",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(0, 0%, 70%)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 11,
+ 1
+ ],
+ [
+ 19,
+ 2.5
+ ]
+ ]
+ }
+ },
+ "filter": [
+ "==",
+ "class",
+ "aerialway"
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 13,
+ "source-layer": "transportation"
+ },
+ {
+ "id": "cablecar-dash",
+ "type": "line",
+ "paint": {
+ "line-color": "hsl(0, 0%, 70%)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 11,
+ 3
+ ],
+ [
+ 19,
+ 5.5
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 2,
+ 3
+ ]
+ },
+ "filter": [
+ "==",
+ "class",
+ "aerialway"
+ ],
+ "layout": {
+ "line-cap": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 13,
+ "source-layer": "transportation"
+ },
+ {
+ "id": "boundary_3",
+ "type": "line",
+ "paint": {
+ "line-color": "#9e9cab",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 4,
+ 0.4
+ ],
+ [
+ 5,
+ 0.7
+ ],
+ [
+ 12,
+ 1.6
+ ]
+ ]
+ },
+ "line-dasharray": [
+ 5,
+ 3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "admin_level",
+ 3,
+ 4
+ ],
+ [
+ "==",
+ "maritime",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 3,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z0-4",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(139, 139, 139, 1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 3,
+ 1
+ ],
+ [
+ 5,
+ 1.2
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "maritime",
+ 0
+ ],
+ [
+ "!has",
+ "claimed_by"
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 5,
+ "minzoom": 0,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z0-4_maritime",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(98,185,229,1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 3,
+ 1
+ ],
+ [
+ 5,
+ 1.2
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "!has",
+ "claimed_by"
+ ],
+ [
+ "==",
+ "maritime",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 5,
+ "minzoom": 0,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z5",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(139, 139, 139, 1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ 1.2
+ ],
+ [
+ 12,
+ 3
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "disputed",
+ 0
+ ],
+ [
+ "==",
+ "maritime",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z5_disputed",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(120, 120, 120, 1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ 1.2
+ ],
+ [
+ 12,
+ 3
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 4,
+ 3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "disputed",
+ 1
+ ],
+ [
+ "==",
+ "maritime",
+ 0
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z5_disputed_maritime",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(98,185,229,1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ 1.2
+ ],
+ [
+ 12,
+ 3
+ ]
+ ]
+ },
+ "line-opacity": 1,
+ "line-dasharray": [
+ 4,
+ 3
+ ]
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "disputed",
+ 1
+ ],
+ [
+ "==",
+ "maritime",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "boundary_2_z5_maritime",
+ "type": "line",
+ "paint": {
+ "line-color": "rgba(98,185,229,1)",
+ "line-width": {
+ "base": 1,
+ "stops": [
+ [
+ 5,
+ 1.2
+ ],
+ [
+ 12,
+ 3
+ ]
+ ]
+ },
+ "line-opacity": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "admin_level",
+ 2
+ ],
+ [
+ "==",
+ "disputed",
+ 0
+ ],
+ [
+ "==",
+ "maritime",
+ 1
+ ]
+ ],
+ "layout": {
+ "line-cap": "round",
+ "line-join": "round",
+ "visibility": "visible"
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "boundary"
+ },
+ {
+ "id": "water_name_line",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#5d60be",
+ "text-halo-color": "rgba(255,255,255,0.7)",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "LineString"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": 12,
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-max-width": 5,
+ "symbol-placement": "line"
+ },
+ "source": "openmaptiles",
+ "minzoom": 0,
+ "metadata": {},
+ "source-layer": "water_name"
+ },
+ {
+ "id": "water_name_point",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(76, 125, 173, 1)",
+ "text-halo-color": "rgba(255,255,255,0)",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ "!=",
+ "class",
+ "ocean"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": 12,
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-max-width": 5
+ },
+ "source": "openmaptiles",
+ "maxzoom": 24,
+ "minzoom": 2,
+ "metadata": {},
+ "source-layer": "water_name"
+ },
+ {
+ "id": "water_ocean_name_point",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(76, 125, 173, 1)",
+ "text-halo-color": "rgba(255,255,255,0)",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ "==",
+ "class",
+ "ocean"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": 12,
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-max-width": 5
+ },
+ "source": "openmaptiles",
+ "minzoom": 0,
+ "metadata": {},
+ "source-layer": "water_name"
+ },
+ {
+ "id": "poi_z16_subclass",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ ">=",
+ "rank",
+ 20
+ ],
+ [
+ "any",
+ [
+ "all",
+ [
+ "in",
+ "class",
+ "pitch"
+ ],
+ [
+ "in",
+ "subclass",
+ "soccer",
+ "tennis",
+ "baseball",
+ "basketball",
+ "swimming",
+ "golf"
+ ]
+ ]
+ ],
+ [
+ "any",
+ [
+ "!has",
+ "level"
+ ],
+ [
+ "==",
+ "level",
+ 0
+ ]
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{subclass}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
"text-anchor": "top",
- "text-field": { "stops": [ [ 11, "{ref}" ], [ 12, "{name_en}" ] ] },
- "text-letter-spacing": 0.01,
+ "text-offset": [
+ 0,
+ 0.6
+ ],
+ "text-padding": 2,
"text-max-width": 9
},
- "paint": {
- "text-color": "hsl(230, 48%, 44%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 0.5,
- "text-halo-blur": 0.5
- }
+ "source": "openmaptiles",
+ "minzoom": 16,
+ "metadata": {},
+ "source-layer": "poi"
},
{
- "id": "place-islet-archipelago-aboriginal",
+ "id": "poi_z16",
"type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 16,
- "filter": [ "in", "type", "aboriginal_lands", "archipelago", "islet" ],
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ ">=",
+ "rank",
+ 20
+ ],
+ [
+ "none",
+ [
+ "all",
+ [
+ "in",
+ "class",
+ "pitch"
+ ],
+ [
+ "in",
+ "subclass",
+ "soccer",
+ "tennis",
+ "baseball",
+ "basketball",
+ "swimming",
+ "golf"
+ ]
+ ]
+ ],
+ [
+ "any",
+ [
+ "!has",
+ "level"
+ ],
+ [
+ "==",
+ "level",
+ 0
+ ]
+ ]
+ ],
"layout": {
- "text-line-height": 1.2,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 16 ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{class}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "top",
+ "text-offset": [
+ 0,
+ 0.6
+ ],
"text-padding": 2,
- "text-offset": [ 0, 0 ],
- "text-rotation-alignment": "viewport",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 16,
+ "metadata": {},
+ "source-layer": "poi"
+ },
+ {
+ "id": "poi_z15",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ ">=",
+ "rank",
+ 7
+ ],
+ [
+ "<",
+ "rank",
+ 20
+ ],
+ [
+ "any",
+ [
+ "!has",
+ "level"
+ ],
+ [
+ "==",
+ "level",
+ 0
+ ]
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{class}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "top",
+ "text-offset": [
+ 0,
+ 0.6
+ ],
+ "text-padding": 2,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 15,
+ "metadata": {},
+ "source-layer": "poi"
+ },
+ {
+ "id": "poi_z14",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "$type",
+ "Point"
+ ],
+ [
+ "any",
+ [
+ "<",
+ "rank",
+ 7
+ ]
+ ],
+ [
+ "any",
+ [
+ "!has",
+ "level"
+ ],
+ [
+ "==",
+ "level",
+ 0
+ ]
+ ]
+ ],
+ "layout": {
+ "icon-size": 0.9,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{class}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "top",
+ "text-offset": [
+ 0,
+ 0.6
+ ],
+ "text-padding": 2,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 14.2,
+ "metadata": {},
+ "source-layer": "poi"
+ },
+ {
+ "id": "poi_transit",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(102, 102, 102, 1)",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "class",
+ "bus",
+ "railway",
+ "airport"
+ ],
+ [
+ "==",
+ "subclass",
+ "station"
+ ]
+ ],
+ "layout": {
+ "icon-size": 0.9,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 12,
+ "icon-image": "{class}_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "left",
+ "text-offset": [
+ 0.9,
+ 0
+ ],
+ "text-padding": 2,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 15,
+ "metadata": {},
+ "source-layer": "poi"
+ },
+ {
+ "id": "road_oneway",
+ "type": "symbol",
+ "paint": {
+ "icon-opacity": 0.5
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "oneway",
+ 1
+ ],
+ [
+ "in",
+ "class",
+ "motorway",
+ "trunk",
+ "primary",
+ "secondary",
+ "tertiary",
+ "minor",
+ "service"
+ ]
+ ],
+ "layout": {
+ "icon-size": {
+ "stops": [
+ [
+ 15,
+ 0.5
+ ],
+ [
+ 19,
+ 1
+ ]
+ ]
+ },
+ "icon-image": "oneway",
+ "visibility": "visible",
+ "icon-rotate": 90,
+ "icon-padding": 2,
+ "symbol-spacing": 75,
+ "symbol-placement": "line",
+ "icon-rotation-alignment": "map"
+ },
+ "source": "openmaptiles",
+ "minzoom": 15,
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_oneway_opposite",
+ "type": "symbol",
+ "paint": {
+ "icon-opacity": 0.5
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "oneway",
+ -1
+ ],
+ [
+ "in",
+ "class",
+ "motorway",
+ "trunk",
+ "primary",
+ "secondary",
+ "tertiary",
+ "minor",
+ "service"
+ ]
+ ],
+ "layout": {
+ "icon-size": {
+ "stops": [
+ [
+ 15,
+ 0.5
+ ],
+ [
+ 19,
+ 1
+ ]
+ ]
+ },
+ "icon-image": "oneway",
+ "icon-rotate": -90,
+ "icon-padding": 2,
+ "symbol-spacing": 75,
+ "symbol-placement": "line",
+ "icon-rotation-alignment": "map"
+ },
+ "source": "openmaptiles",
+ "minzoom": 15,
+ "source-layer": "transportation"
+ },
+ {
+ "id": "road_label",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#765",
+ "text-halo-blur": 0.5,
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all"
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "base": 1,
+ "stops": [
+ [
+ 13,
+ 12
+ ],
+ [
+ 14,
+ 13
+ ]
+ ]
+ },
+ "text-field": ["format", ["get", "name:latin"], {"text-color": "green"}],
+ "text-anchor": "center",
+ "text-offset": [
+ 0,
+ 0.15
+ ],
+ "symbol-placement": "line"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "transportation_name"
+ },
+ {
+ "id": "highway-shield",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(37, 36, 36, 1)"
+ },
+ "filter": [
+ "all",
+ [
+ "<=",
+ "ref_length",
+ 6
+ ],
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "!in",
+ "network",
+ "us-interstate",
+ "us-highway",
+ "us-state"
+ ]
+ ],
+ "layout": {
+ "icon-size": 1,
+ "text-font": [
+ "Noto Sans Regular"
+ ],
+ "text-size": 10,
+ "icon-image": "road_{ref_length}",
+ "text-field": "{ref}",
+ "symbol-spacing": 200,
+ "symbol-placement": {
+ "base": 1,
+ "stops": [
+ [
+ 10,
+ "point"
+ ],
+ [
+ 11,
+ "line"
+ ]
+ ]
+ },
+ "symbol-avoid-edges": true,
+ "icon-rotation-alignment": "viewport",
+ "text-rotation-alignment": "viewport"
+ },
+ "source": "openmaptiles",
+ "minzoom": 8,
+ "source-layer": "transportation_name"
+ },
+ {
+ "id": "highway-shield-us-interstate",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(255, 255, 255, 1)"
+ },
+ "filter": [
+ "all",
+ [
+ "<=",
+ "ref_length",
+ 6
+ ],
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "in",
+ "network",
+ "us-interstate"
+ ]
+ ],
+ "layout": {
+ "icon-size": 1,
+ "text-font": [
+ "Noto Sans Regular"
+ ],
+ "text-size": 9,
+ "icon-image": "{network}_{ref_length}",
+ "text-field": "{ref}",
+ "symbol-spacing": 200,
+ "symbol-placement": {
+ "base": 1,
+ "stops": [
+ [
+ 7,
+ "point"
+ ],
+ [
+ 7,
+ "line"
+ ],
+ [
+ 8,
+ "line"
+ ]
+ ]
+ },
+ "symbol-avoid-edges": true,
+ "icon-rotation-alignment": "viewport",
+ "text-rotation-alignment": "viewport"
+ },
+ "source": "openmaptiles",
+ "minzoom": 7,
+ "source-layer": "transportation_name"
+ },
+ {
+ "id": "highway-shield-us-other",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(37, 36, 36, 1)"
+ },
+ "filter": [
+ "all",
+ [
+ "<=",
+ "ref_length",
+ 6
+ ],
+ [
+ "==",
+ "$type",
+ "LineString"
+ ],
+ [
+ "in",
+ "network",
+ "us-highway",
+ "us-state"
+ ]
+ ],
+ "layout": {
+ "icon-size": 1,
+ "text-font": [
+ "Noto Sans Regular"
+ ],
+ "text-size": 9,
+ "icon-image": "{network}_{ref_length}",
+ "text-field": "{ref}",
+ "symbol-spacing": 200,
+ "symbol-placement": {
+ "base": 1,
+ "stops": [
+ [
+ 10,
+ "point"
+ ],
+ [
+ 11,
+ "line"
+ ]
+ ]
+ },
+ "symbol-avoid-edges": true,
+ "icon-rotation-alignment": "viewport",
+ "text-rotation-alignment": "viewport"
+ },
+ "source": "openmaptiles",
+ "minzoom": 9,
+ "source-layer": "transportation_name"
+ },
+ {
+ "id": "airport-label-major",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#666",
+ "text-halo-blur": 0.5,
+ "text-halo-color": "#ffffff",
+ "text-halo-width": 1
+ },
+ "filter": [
+ "all",
+ [
+ "has",
+ "iata"
+ ]
+ ],
+ "layout": {
+ "icon-size": 1,
+ "text-font": [
+ "Noto Sans Regular"
+ ],
+ "text-size": 12,
+ "icon-image": "airport_11",
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-anchor": "top",
+ "text-offset": [
+ 0,
+ 0.6
+ ],
+ "text-padding": 2,
+ "text-optional": true,
+ "text-max-width": 9
+ },
+ "source": "openmaptiles",
+ "minzoom": 10,
+ "source-layer": "aerodrome_label"
+ },
+ {
+ "id": "airport_gate",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(135, 135, 135, 1)",
+ "text-halo-color": "rgba(255, 255, 255, 1)",
+ "text-halo-width": 1.5
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "gate"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Medium",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "stops": [
+ [
+ 17,
+ 9
+ ],
+ [
+ 19,
+ 15
+ ]
+ ]
+ },
+ "text-field": "{ref}"
+ },
+ "source": "openmaptiles",
+ "minzoom": 16.5,
+ "source-layer": "aeroway"
+ },
+ {
+ "id": "place_other",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(66, 62, 62, 1)",
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 1.2
+ },
+ "filter": [
+ "all",
+ [
+ "in",
+ "class",
+ "hamlet",
+ "island",
+ "islet",
+ "neighbourhood",
+ "suburb"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
+ "base": 1.2,
+ "stops": [
+ [
+ 12,
+ 10
+ ],
+ [
+ 15,
+ 14
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "visibility": "visible",
+ "text-max-width": 9,
+ "text-transform": "uppercase",
+ "text-letter-spacing": 0.1
+ },
+ "source": "openmaptiles",
+ "minzoom": 8,
+ "metadata": {},
+ "source-layer": "place"
+ },
+ {
+ "id": "place_village",
+ "type": "symbol",
+ "paint": {
+ "text-color": "#333",
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 1.2
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "village"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "base": 1.2,
+ "stops": [
+ [
+ 10,
+ 12
+ ],
+ [
+ 15,
+ 22
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
"text-max-width": 8
},
- "paint": {
- "text-color": "hsl(230, 29%, 35%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
- },
- {
- "id": "place-neighbourhood",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 10,
- "maxzoom": 16,
- "filter": [ "==", "type", "neighbourhood" ],
- "layout": {
- "text-field": "{name_en}",
- "text-transform": "uppercase",
- "text-letter-spacing": 0.1,
- "text-max-width": 7,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-padding": 3,
- "text-size": { "base": 1, "stops": [ [ 12, 11 ], [ 16, 16 ] ] }
- },
- "paint": {
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "text-color": "hsl(230, 29%, 35%)",
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "place-suburb",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 10,
- "maxzoom": 16,
- "filter": [ "==", "type", "suburb" ],
- "layout": {
- "text-field": "{name_en}",
- "text-transform": "uppercase",
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-letter-spacing": 0.15,
- "text-max-width": 7,
- "text-padding": 3,
- "text-size": { "base": 1, "stops": [ [ 11, 11 ], [ 15, 18 ] ] }
- },
- "paint": {
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "text-color": "hsl(230, 29%, 35%)",
- "text-halo-blur": 0.5
- }
- },
- {
- "id": "place-hamlet",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 10,
- "maxzoom": 16,
- "filter": [ "==", "type", "hamlet" ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 12, 11.5 ], [ 15, 16 ] ] }
- },
- "paint": {
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "text-color": "hsl(0, 0%, 0%)"
- }
- },
- {
- "id": "place-village",
- "type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
+ "source": "openmaptiles",
"minzoom": 8,
- "maxzoom": 15,
- "filter": [ "==", "type", "village" ],
- "layout": {
- "text-field": "{name_en}",
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
- "text-max-width": 7,
- "text-size": { "base": 1, "stops": [ [ 10, 11.5 ], [ 16, 18 ] ] }
- },
- "paint": {
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "text-color": "hsl(0, 0%, 0%)"
- }
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-town",
+ "id": "place_town",
"type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
+ "paint": {
+ "text-color": "#333",
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 1.2
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "town"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Regular",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "base": 1.2,
+ "stops": [
+ [
+ 7,
+ 12
+ ],
+ [
+ 11,
+ 16
+ ]
+ ]
+ },
+ "icon-image": {
+ "base": 1,
+ "stops": [
+ [
+ 0,
+ "circle-stroked_16"
+ ],
+ [
+ 10,
+ ""
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "text-anchor": "bottom",
+ "text-offset": [
+ 0,
+ 0
+ ],
+ "text-max-width": 8
+ },
+ "source": "openmaptiles",
"minzoom": 6,
- "maxzoom": 15,
- "filter": [ "==", "type", "town" ],
- "layout": {
- "icon-image": "dot-9",
- "text-font": {
- "base": 1,
- "stops": [
- [ 11, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 12, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
- ]
- },
- "text-offset": { "base": 1, "stops": [ [ 7, [ 0, -0.15 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "bottom" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7,
- "text-size": { "base": 1, "stops": [ [ 7, 11.5 ], [ 15, 20 ] ] }
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] }
- }
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-island",
+ "id": "place_city",
"type": "symbol",
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 16,
- "filter": [ "==", "type", "island" ],
+ "paint": {
+ "text-color": "#333",
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 1.2
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "city"
+ ]
+ ],
"layout": {
- "text-line-height": 1.2,
- "text-size": { "base": 1, "stops": [ [ 10, 11 ], [ 18, 16 ] ] },
- "text-max-angle": 38,
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ],
+ "text-font": [
+ "Roboto Medium",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "base": 1.2,
+ "stops": [
+ [
+ 7,
+ 14
+ ],
+ [
+ 11,
+ 24
+ ]
+ ]
+ },
+ "icon-image": {
+ "base": 1,
+ "stops": [
+ [
+ 0,
+ "circle-stroked_16"
+ ],
+ [
+ 10,
+ ""
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
+ "text-anchor": "bottom",
+ "text-offset": [
+ 0,
+ 0
+ ],
+ "icon-optional": false,
+ "text-max-width": 8,
+ "icon-allow-overlap": true
+ },
+ "source": "openmaptiles",
+ "minzoom": 5,
+ "metadata": {},
+ "source-layer": "place"
+ },
+ {
+ "id": "place_state",
+ "type": "symbol",
+ "paint": {
+ "text-color": "rgba(74, 72, 66, 1)",
+ "text-halo-color": "rgba(255,255,255,0.7)",
+ "text-halo-width": 0.8
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "state"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Medium",
+ "Noto Sans Regular"
+ ],
+ "text-size": {
+ "stops": [
+ [
+ 3,
+ 10
+ ],
+ [
+ 6,
+ 14
+ ]
+ ]
+ },
+ "text-field": "{name:latin}\n{name:nonlatin}",
"text-padding": 2,
- "text-offset": [ 0, 0 ],
- "text-rotation-alignment": "viewport",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.01,
- "text-max-width": 7
+ "text-transform": "uppercase",
+ "text-letter-spacing": 0.1
},
- "paint": {
- "text-color": "hsl(230, 29%, 35%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
+ "source": "openmaptiles",
+ "maxzoom": 6,
+ "minzoom": 3,
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-city-sm",
+ "id": "country_other",
"type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 14,
- "filter": [ "all", [ "!in", "scalerank", 0, 1, 2, 3, 4, 5 ], [ "==", "type", "city" ] ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 6, 12 ], [ 14, 22 ] ] },
- "icon-image": "dot-9",
- "text-font": {
- "base": 1,
- "stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
- ]
- },
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, -0.2 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "bottom" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7
- },
"paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1.25,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] }
- }
- },
- {
- "id": "place-city-md-s",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 14,
- "filter": [
- "all",
- [ "in", "ldir", "E", "S", "SE", "SW" ],
- [ "in", "scalerank", 3, 4, 5 ],
- [ "==", "type", "city" ]
- ],
- "layout": {
- "text-field": "{name_en}",
- "icon-image": "dot-10",
- "text-anchor": { "base": 1, "stops": [ [ 7, "top" ], [ 8, "center" ] ] },
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, 0.1 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-font": {
- "base": 1,
- "stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
- ]
- },
- "text-size": { "base": 0.9, "stops": [ [ 5, 12 ], [ 12, 22 ] ] }
- },
- "paint": {
- "text-halo-width": 1,
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-color": "hsl(0, 0%, 0%)",
+ "text-color": "#334",
"text-halo-blur": 1,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] }
- }
- },
- {
- "id": "place-city-md-n",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "maxzoom": 14,
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 0.8
+ },
"filter": [
"all",
- [ "in", "ldir", "N", "NE", "NW", "W" ],
- [ "in", "scalerank", 3, 4, 5 ],
- [ "==", "type", "city" ]
+ [
+ "==",
+ "class",
+ "country"
+ ],
+ [
+ "!has",
+ "iso_a2"
+ ]
],
"layout": {
- "icon-image": "dot-10",
- "text-font": {
- "base": 1,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
"stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
+ [
+ 3,
+ 9
+ ],
+ [
+ 7,
+ 15
+ ]
]
},
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, -0.25 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "bottom" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7,
- "text-size": { "base": 0.9, "stops": [ [ 5, 12 ], [ 12, 22 ] ] }
+ "text-field": "{name:latin}",
+ "text-max-width": 6.25,
+ "text-transform": "none"
},
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] },
- "text-halo-blur": 1
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-city-lg-s",
+ "id": "country_3",
"type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 1,
- "maxzoom": 14,
+ "paint": {
+ "text-color": "#334",
+ "text-halo-blur": 1,
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 0.8
+ },
"filter": [
"all",
- [ "in", "ldir", "E", "S", "SE", "SW" ],
- [ "<=", "scalerank", 2 ],
- [ "==", "type", "city" ]
+ [
+ ">=",
+ "rank",
+ 3
+ ],
+ [
+ "==",
+ "class",
+ "country"
+ ],
+ [
+ "has",
+ "iso_a2"
+ ]
],
"layout": {
- "icon-image": "dot-11",
- "text-font": {
- "base": 1,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
"stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
+ [
+ 3,
+ 11
+ ],
+ [
+ 7,
+ 17
+ ]
]
},
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, 0.15 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "top" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7,
- "text-size": { "base": 0.9, "stops": [ [ 4, 12 ], [ 10, 22 ] ] }
+ "text-field": "{name:latin}",
+ "text-max-width": 6.25,
+ "text-transform": "none"
},
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] },
- "text-halo-blur": 1
- }
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "place-city-lg-n",
+ "id": "country_2",
"type": "symbol",
- "metadata": { "mapbox:group": "1444862510685.128" },
- "source": "composite",
- "source-layer": "place_label",
- "minzoom": 1,
- "maxzoom": 14,
+ "paint": {
+ "text-color": "#334",
+ "text-halo-blur": 1,
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 0.8
+ },
"filter": [
"all",
- [ "in", "ldir", "N", "NE", "NW", "W" ],
- [ "<=", "scalerank", 2 ],
- [ "==", "type", "city" ]
+ [
+ "==",
+ "rank",
+ 2
+ ],
+ [
+ "==",
+ "class",
+ "country"
+ ],
+ [
+ "has",
+ "iso_a2"
+ ]
],
"layout": {
- "icon-image": "dot-11",
- "text-font": {
- "base": 1,
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
"stops": [
- [ 7, [ "DIN Offc Pro Regular", "Arial Unicode MS Regular" ] ],
- [ 8, [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ] ]
+ [
+ 2,
+ 11
+ ],
+ [
+ 5,
+ 17
+ ]
]
},
- "text-offset": { "base": 1, "stops": [ [ 7.99, [ 0, -0.25 ] ], [ 8, [ 0, 0 ] ] ] },
- "text-anchor": { "base": 1, "stops": [ [ 7, "bottom" ], [ 8, "center" ] ] },
- "text-field": "{name_en}",
- "text-max-width": 7,
- "text-size": { "base": 0.9, "stops": [ [ 4, 12 ], [ 10, 22 ] ] }
+ "text-field": "{name:latin}",
+ "text-max-width": 6.25,
+ "text-transform": "none"
},
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "place"
+ },
+ {
+ "id": "country_1",
+ "type": "symbol",
"paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-opacity": 1,
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1,
- "icon-opacity": { "base": 1, "stops": [ [ 7.99, 1 ], [ 8, 0 ] ] },
- "text-halo-blur": 1
- }
+ "text-color": "#334",
+ "text-halo-blur": 1,
+ "text-halo-color": "rgba(255,255,255,0.8)",
+ "text-halo-width": 0.8
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "rank",
+ 1
+ ],
+ [
+ "==",
+ "class",
+ "country"
+ ],
+ [
+ "has",
+ "iso_a2"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": {
+ "stops": [
+ [
+ 1,
+ 11
+ ],
+ [
+ 4,
+ 17
+ ],
+ [
+ 6,
+ 19
+ ]
+ ]
+ },
+ "text-field": "{name:latin}",
+ "text-max-width": 6.25,
+ "text-transform": "none"
+ },
+ "source": "openmaptiles",
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "marine-label-sm-ln",
+ "id": "continent",
"type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 3,
- "maxzoom": 10,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ ">=", "labelrank", 4 ] ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1, "stops": [ [ 3, 12 ], [ 6, 16 ] ] },
- "symbol-spacing": { "base": 1, "stops": [ [ 4, 100 ], [ 6, 400 ] ] },
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.1,
- "text-max-width": 5
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-sm-pt",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 3,
- "maxzoom": 10,
- "filter": [ "all", [ "==", "$type", "Point" ], [ ">=", "labelrank", 4 ] ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": 5,
- "text-letter-spacing": 0.1,
- "text-line-height": 1.5,
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 3, 12 ], [ 6, 16 ] ] }
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-md-ln",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 2,
- "maxzoom": 8,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "in", "labelrank", 2, 3 ] ],
- "layout": {
- "text-line-height": 1.1,
- "text-size": { "base": 1.1, "stops": [ [ 2, 12 ], [ 5, 20 ] ] },
- "symbol-spacing": 250,
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "symbol-placement": "line",
- "text-field": "{name_en}",
- "text-letter-spacing": 0.15,
- "text-max-width": 5
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-md-pt",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 2,
- "maxzoom": 8,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "in", "labelrank", 2, 3 ] ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": 5,
- "text-letter-spacing": 0.15,
- "text-line-height": 1.5,
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1.1, "stops": [ [ 2, 14 ], [ 5, 20 ] ] }
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-lg-ln",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 1,
- "maxzoom": 4,
- "filter": [ "all", [ "==", "$type", "LineString" ], [ "==", "labelrank", 1 ] ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": 4,
- "text-letter-spacing": 0.25,
- "text-line-height": 1.1,
- "symbol-placement": "line",
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 1, 14 ], [ 4, 30 ] ] }
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "marine-label-lg-pt",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856087950.3635" },
- "source": "composite",
- "source-layer": "marine_label",
- "minzoom": 1,
- "maxzoom": 4,
- "filter": [ "all", [ "==", "$type", "Point" ], [ "==", "labelrank", 1 ] ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": 4,
- "text-letter-spacing": 0.25,
- "text-line-height": 1.5,
- "text-font": [ "DIN Offc Pro Italic", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 1, 14 ], [ 4, 30 ] ] }
- },
- "paint": { "text-color": "hsl(205, 83%, 88%)" }
- },
- {
- "id": "state-label-sm",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856151690.9143" },
- "source": "composite",
- "source-layer": "state_label",
- "minzoom": 3,
- "maxzoom": 9,
- "filter": [ "<", "area", 20000 ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 6, 10 ], [ 9, 14 ] ] },
- "text-transform": "uppercase",
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "text-field": { "base": 1, "stops": [ [ 0, "{abbr}" ], [ 6, "{name_en}" ] ] },
- "text-letter-spacing": 0.15,
- "text-max-width": 5
- },
"paint": {
- "text-opacity": 1,
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
+ "text-color": "#633",
+ "text-halo-color": "rgba(255,255,255,0.7)",
"text-halo-width": 1
- }
+ },
+ "filter": [
+ "all",
+ [
+ "==",
+ "class",
+ "continent"
+ ]
+ ],
+ "layout": {
+ "text-font": [
+ "Roboto Condensed Italic",
+ "Noto Sans Italic"
+ ],
+ "text-size": 13,
+ "text-field": "{name:latin}",
+ "text-justify": "center",
+ "text-transform": "uppercase"
+ },
+ "source": "openmaptiles",
+ "maxzoom": 1,
+ "metadata": {},
+ "source-layer": "place"
},
{
- "id": "state-label-md",
+ "id": "housenumber",
"type": "symbol",
- "metadata": { "mapbox:group": "1444856151690.9143" },
- "source": "composite",
- "source-layer": "state_label",
- "minzoom": 3,
- "maxzoom": 8,
- "filter": [ "all", [ "<", "area", 80000 ], [ ">=", "area", 20000 ] ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 5, 10 ], [ 8, 16 ] ] },
- "text-transform": "uppercase",
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "text-field": { "base": 1, "stops": [ [ 0, "{abbr}" ], [ 5, "{name_en}" ] ] },
- "text-letter-spacing": 0.15,
- "text-max-width": 6
- },
"paint": {
- "text-opacity": 1,
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
- },
- {
- "id": "state-label-lg",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856151690.9143" },
- "source": "composite",
- "source-layer": "state_label",
- "minzoom": 3,
- "maxzoom": 7,
- "filter": [ ">=", "area", 80000 ],
- "layout": {
- "text-size": { "base": 1, "stops": [ [ 4, 10 ], [ 7, 18 ] ] },
- "text-transform": "uppercase",
- "text-font": [ "DIN Offc Pro Bold", "Arial Unicode MS Bold" ],
- "text-padding": 1,
- "text-field": { "base": 1, "stops": [ [ 0, "{abbr}" ], [ 4, "{name_en}" ] ] },
- "text-letter-spacing": 0.15,
- "text-max-width": 6
+ "text-color": "rgba(119, 102, 85, 0.69)"
},
- "paint": {
- "text-opacity": 1,
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": "hsl(0, 0%, 100%)",
- "text-halo-width": 1
- }
- },
- {
- "id": "country-label-sm",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856144497.7825" },
- "source": "composite",
- "source-layer": "country_label",
- "minzoom": 1,
- "maxzoom": 10,
- "filter": [ ">=", "scalerank", 5 ],
"layout": {
- "text-field": "{name_en}",
- "text-max-width": 6,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-size": { "base": 0.9, "stops": [ [ 5, 14 ], [ 9, 22 ] ] }
+ "text-font": [
+ "Roboto Medium",
+ "Noto Sans Regular"
+ ],
+ "text-size": 10,
+ "text-field": "{housenumber}"
},
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": { "base": 1, "stops": [ [ 2, "rgba(255,255,255,0.75)" ], [ 3, "hsl(0, 0%, 100%)" ] ] },
- "text-halo-width": 1.25
- }
- },
- {
- "id": "country-label-md",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856144497.7825" },
- "source": "composite",
- "source-layer": "country_label",
- "minzoom": 1,
- "maxzoom": 8,
- "filter": [ "in", "scalerank", 3, 4 ],
- "layout": {
- "text-field": { "base": 1, "stops": [ [ 0, "{code}" ], [ 2, "{name_en}" ] ] },
- "text-max-width": 6,
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 3, 10 ], [ 8, 24 ] ] }
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": { "base": 1, "stops": [ [ 2, "rgba(255,255,255,0.75)" ], [ 3, "hsl(0, 0%, 100%)" ] ] },
- "text-halo-width": 1.25
- }
- },
- {
- "id": "country-label-lg",
- "type": "symbol",
- "metadata": { "mapbox:group": "1444856144497.7825" },
- "source": "composite",
- "source-layer": "country_label",
- "minzoom": 1,
- "maxzoom": 7,
- "filter": [ "in", "scalerank", 1, 2 ],
- "layout": {
- "text-field": "{name_en}",
- "text-max-width": { "base": 1, "stops": [ [ 0, 5 ], [ 3, 6 ] ] },
- "text-font": [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ],
- "text-size": { "base": 1, "stops": [ [ 1, 10 ], [ 6, 24 ] ] }
- },
- "paint": {
- "text-color": "hsl(0, 0%, 0%)",
- "text-halo-color": { "base": 1, "stops": [ [ 2, "rgba(255,255,255,0.75)" ], [ 3, "hsl(0, 0%, 100%)" ] ] },
- "text-halo-width": 1.25
- }
+ "source": "openmaptiles",
+ "minzoom": 17.5,
+ "source-layer": "housenumber"
}
- ]
+ ],
+ "sprite": "maptiler://sprites/streets/sprite",
+ "bearing": 0,
+ "sources": {
+ "openmaptiles": {
+ "url": "maptiler://sources/v3",
+ "type": "vector"
+ },
+ "maptiler_attribution": {
+ "type": "vector",
+ "attribution": "© MapTiler © OpenStreetMap contributors"
+ }
+ },
+ "version": 8,
+ "metadata": {
+ "mapbox:type": "template",
+ "maptiler:copyright": "This style was generated on MapTiler Cloud. Usage outside of MapTiler Cloud requires valid OpenMapTiles Production Package: https://openmaptiles.com/production-package/ -- please contact us.",
+ "openmaptiles:version": "3.x"
+ }
}
\ No newline at end of file
diff --git a/benchmark/storage/offline_database.benchmark.cpp b/benchmark/storage/offline_database.benchmark.cpp
index afdf6db4f..f2ad2605c 100644
--- a/benchmark/storage/offline_database.benchmark.cpp
+++ b/benchmark/storage/offline_database.benchmark.cpp
@@ -56,7 +56,7 @@ public:
}
mbgl::Response response;
- mbgl::OfflineDatabase db{":memory:"};
+ mbgl::OfflineDatabase db{":memory:", mbgl::TileServerOptions::DefaultConfiguration()};
const unsigned tileCount = 100;
int64_t regionID = 0;
diff --git a/bin/CMakeLists.txt b/bin/CMakeLists.txt
index d6ac17ae1..842a91e72 100644
--- a/bin/CMakeLists.txt
+++ b/bin/CMakeLists.txt
@@ -36,7 +36,7 @@ install(TARGETS mbgl-offline mbgl-render RUNTIME DESTINATION bin)
# FIXME: CI must have a valid token
#
-# add_test(NAME mbgl-offline-tool-test COMMAND mbgl-offline -s mapbox://styles/mapbox/satellite-v9 --maxZoom=0 WORKING_DIRECTORY
+# add_test(NAME mbgl-offline-tool-test COMMAND mbgl-offline -s maptiler://maps/hybrid --maxZoom=0 WORKING_DIRECTORY
# ${PROJECT_SOURCE_DIR} )
#
# add_test(NAME mbgl-render-tool-test COMMAND mbgl-render WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} )
diff --git a/bin/offline.cpp b/bin/offline.cpp
index 97b60c223..ed5ea10aa 100644
--- a/bin/offline.cpp
+++ b/bin/offline.cpp
@@ -1,4 +1,3 @@
-#include
#include
#include
#include
@@ -6,6 +5,7 @@
#include
#include
#include
+#include
#include
@@ -80,7 +80,7 @@ int main(int argc, char *argv[]) {
args::ArgumentParser argumentParser("Mapbox GL offline tool");
args::HelpFlag helpFlag(argumentParser, "help", "Display this help menu", {'h', "help"});
- args::ValueFlag tokenValue(argumentParser, "key", "Mapbox access token", {'t', "token"});
+ args::ValueFlag tokenValue(argumentParser, "key", "API Key", {'t', "token"});
args::ValueFlag styleValue(argumentParser, "URL", "Map stylesheet", {'s', "style"});
args::ValueFlag outputValue(argumentParser, "file", "Output database file name", {'o', "output"});
args::ValueFlag apiBaseValue(argumentParser, "URL", "API Base URL", {'a', "apiBaseURL"});
@@ -120,8 +120,11 @@ int main(int argc, char *argv[]) {
exit(2);
}
- std::string style = styleValue ? args::get(styleValue) : mbgl::util::default_styles::streets.url;
-
+ auto mapTilerConfiguration = mbgl::TileServerOptions::MapTilerConfiguration();
+
+ std::string style = styleValue ? args::get(styleValue) : mapTilerConfiguration.defaultStyles().at(0).getUrl();
+ std::cout << " Style: " << style << std::endl;
+
mbgl::optional mergePath = {};
if (mergePathValue) mergePath = args::get(mergePathValue);
mbgl::optional inputDb = {};
@@ -156,17 +159,20 @@ int main(int argc, char *argv[]) {
}
}();
- const char* tokenEnv = getenv("MAPBOX_ACCESS_TOKEN");
- const std::string token = tokenValue ? args::get(tokenValue) : (tokenEnv ? tokenEnv : std::string());
+ const char* apiEnv = getenv("MGL_API_KEY");
+ const std::string apiKey = tokenValue ? args::get(tokenValue) : (apiEnv ? apiEnv : std::string());
- const std::string apiBaseURL = apiBaseValue ? args::get(apiBaseValue) : mbgl::util::API_BASE_URL;
-
+ if (apiBaseValue) {
+ mapTilerConfiguration.withBaseURL(args::get(apiBaseValue));
+ }
util::RunLoop loop;
std::shared_ptr fileSource = std::static_pointer_cast(
std::shared_ptr(FileSourceManager::get()->getFileSource(
FileSourceType::Database,
- ResourceOptions().withAccessToken(token).withBaseURL(apiBaseURL).withCachePath(output))));
+ ResourceOptions().withApiKey(apiKey)
+ .withTileServerOptions(mapTilerConfiguration)
+ .withCachePath(output))));
std::unique_ptr region;
diff --git a/bin/offline.sh b/bin/offline.sh
index 99ce2185e..d58220165 100755
--- a/bin/offline.sh
+++ b/bin/offline.sh
@@ -3,16 +3,16 @@
set -e
set -o pipefail
-OFFLINE=./build/macos/Release/mbgl-offline
+OFFLINE=../platform/ios/build/macos/Debug/mbgl-offline
# Barcelona
$OFFLINE --north 41.4664 --west 2.0407 --south 41.2724 --east 2.2680 --output barcelona.db
-$OFFLINE --north 41.4664 --west 2.0407 --south 41.2724 --east 2.2680 --output barcelona_sat.db --style mapbox://styles/mapbox/satellite-v8
+$OFFLINE --north 41.4664 --west 2.0407 --south 41.2724 --east 2.2680 --output barcelona_sat.db --style maptiler://maps/hybrid
# Greater London within the M25 at zoom levels 0–15
$OFFLINE --north 51.6777 --west -0.5026 --south 51.3237 --east 0.2527 --maxZoom 15 --output london.db
-$OFFLINE --north 51.6777 --west -0.5026 --south 51.3237 --east 0.2527 --maxZoom 15 --output london_sat.db --style mapbox://styles/mapbox/satellite-v8
+$OFFLINE --north 51.6777 --west -0.5026 --south 51.3237 --east 0.2527 --maxZoom 15 --output london_sat.db --style maptiler://maps/hybrid
# The contiguous United States at zoom levels 0–9
$OFFLINE --north 49.6107 --west -125.5078 --south 24.2870 --east -66.3574 --maxZoom 9 --output us.db
-$OFFLINE --north 49.6107 --west -125.5078 --south 24.2870 --east -66.3574 --maxZoom 9 --output us_sat.db --style mapbox://styles/mapbox/satellite-v8
+$OFFLINE --north 49.6107 --west -125.5078 --south 24.2870 --east -66.3574 --maxZoom 9 --output us_sat.db --style maptiler://maps/hybrid
diff --git a/bin/render.cpp b/bin/render.cpp
index 409dfa792..1680e1c44 100644
--- a/bin/render.cpp
+++ b/bin/render.cpp
@@ -19,7 +19,7 @@ int main(int argc, char *argv[]) {
args::HelpFlag helpFlag(argumentParser, "help", "Display this help menu", {"help"});
args::ValueFlag backendValue(argumentParser, "Backend", "Rendering backend", {"backend"});
- args::ValueFlag tokenValue(argumentParser, "key", "Mapbox access token", {'t', "token"});
+ args::ValueFlag apikeyValue(argumentParser, "key", "API key", {'t', "apikey"});
args::ValueFlag styleValue(argumentParser, "URL", "Map stylesheet", {'s', "style"});
args::ValueFlag outputValue(argumentParser, "file", "Output file name", {'o', "output"});
args::ValueFlag cacheValue(argumentParser, "file", "Cache database file name", {'c', "cache"});
@@ -67,9 +67,9 @@ int main(int argc, char *argv[]) {
const std::string cache_file = cacheValue ? args::get(cacheValue) : "cache.sqlite";
const std::string asset_root = assetsValue ? args::get(assetsValue) : ".";
- // Try to load the token from the environment.
- const char* tokenEnv = getenv("MAPBOX_ACCESS_TOKEN");
- const std::string token = tokenValue ? args::get(tokenValue) : (tokenEnv ? tokenEnv : std::string());
+ // Try to load the apikey from the environment.
+ const char* apikeyEnv = getenv("MGL_API_KEY");
+ const std::string apikey = apikeyValue ? args::get(apikeyValue) : (apikeyEnv ? apikeyEnv : std::string());
const bool debug = debugFlag ? args::get(debugFlag) : false;
@@ -80,7 +80,7 @@ int main(int argc, char *argv[]) {
HeadlessFrontend frontend({ width, height }, pixelRatio);
Map map(frontend, MapObserver::nullObserver(),
MapOptions().withMapMode(MapMode::Static).withSize(frontend.getSize()).withPixelRatio(pixelRatio),
- ResourceOptions().withCachePath(cache_file).withAssetPath(asset_root).withAccessToken(std::string(token)));
+ ResourceOptions().withCachePath(cache_file).withAssetPath(asset_root).withApiKey(std::string(apikey)));
if (style.find("://") == std::string::npos) {
style = std::string("file://") + style;
diff --git a/include/mbgl/storage/database_file_source.hpp b/include/mbgl/storage/database_file_source.hpp
index 8a4791462..c1e99e277 100644
--- a/include/mbgl/storage/database_file_source.hpp
+++ b/include/mbgl/storage/database_file_source.hpp
@@ -4,6 +4,7 @@
#include
#include
#include
+#include
namespace mbgl {
@@ -232,6 +233,9 @@ public:
*/
virtual void setOfflineMapboxTileCountLimit(uint64_t) const;
+ void setResourceOptions(ResourceOptions) override;
+ ResourceOptions getResourceOptions() override;
+
private:
class Impl;
const std::unique_ptr impl;
diff --git a/include/mbgl/storage/file_source.hpp b/include/mbgl/storage/file_source.hpp
index b236ff9ee..21b6a4358 100644
--- a/include/mbgl/storage/file_source.hpp
+++ b/include/mbgl/storage/file_source.hpp
@@ -2,6 +2,7 @@
#include
#include
+#include
#include
@@ -33,7 +34,6 @@ enum FileSourceType : uint8_t {
// GeoJSONSource, RasterSource, VectorSource, CustomGeometrySource and other *Sources.
class FileSource {
public:
- FileSource(const FileSource&) = delete;
FileSource& operator=(const FileSource&) = delete;
virtual ~FileSource() = default;
@@ -87,6 +87,11 @@ public:
// When supported, sets the modifier of the requested resources.
virtual void setResourceTransform(ResourceTransform) {} // NOLINT(performance-unnecessary-value-param)
+ // sets the resource options
+ virtual void setResourceOptions(ResourceOptions) = 0;
+ // gets the resource options
+ virtual ResourceOptions getResourceOptions() = 0;
+
protected:
FileSource() = default;
};
@@ -95,7 +100,7 @@ protected:
// Property name to set / get an access token.
// type: std::string
-constexpr const char* ACCESS_TOKEN_KEY = "access-token";
+constexpr const char* API_KEY_KEY = "api-tkey";
// Property name to set / get base url.
// type: std::string
diff --git a/include/mbgl/storage/online_file_source.hpp b/include/mbgl/storage/online_file_source.hpp
index d830450f9..599fe3a94 100644
--- a/include/mbgl/storage/online_file_source.hpp
+++ b/include/mbgl/storage/online_file_source.hpp
@@ -1,14 +1,17 @@
#pragma once
#include
+#include
#include
namespace mbgl {
class OnlineFileSource : public FileSource {
public:
- OnlineFileSource();
+ OnlineFileSource(const ResourceOptions& options);
~OnlineFileSource() override;
+ void setResourceOptions(ResourceOptions) override;
+ ResourceOptions getResourceOptions() override;
private:
// FileSource overrides
diff --git a/include/mbgl/storage/resource_options.hpp b/include/mbgl/storage/resource_options.hpp
index 6d603b8cc..fe2e77b36 100644
--- a/include/mbgl/storage/resource_options.hpp
+++ b/include/mbgl/storage/resource_options.hpp
@@ -2,6 +2,7 @@
#include
#include
+#include
namespace mbgl {
@@ -17,6 +18,7 @@ public:
~ResourceOptions();
ResourceOptions(ResourceOptions&&) noexcept;
+ ResourceOptions& operator=(ResourceOptions& options);
ResourceOptions clone() const;
@@ -26,29 +28,29 @@ public:
* @param token Mapbox access token.
* @return ResourceOptions for chaining options together.
*/
- ResourceOptions& withAccessToken(std::string token);
+ ResourceOptions& withApiKey(std::string token);
/**
* @brief Gets the previously set (or default) Mapbox access token.
*
* @return const std::string& Mapbox access token.
*/
- const std::string& accessToken() const;
+ const std::string& apiKey() const;
/**
- * @brief Sets the API base URL. Default is https://api.mapbox.com for Mapbox.
+ * @brief Sets the tile server options..
*
- * @param baseURL API base URL.
+ * @param tileServerOptions Tile server options.
* @return ResourceOptions for chaining options together.
*/
- ResourceOptions& withBaseURL(std::string baseURL);
+ ResourceOptions& withTileServerOptions(TileServerOptions tileServerOptions);
/**
- * @brief Gets the previously set (or default) API base URL.
+ * @brief Gets the previously set (or default) TileServerOptions.
*
- * @return const std::string& API base URL.
+ * @return const TileServerOptions tile server options.
*/
- const std::string& baseURL() const;
+ const TileServerOptions tileServerOptions() const;
/**
* @brief Sets the cache path.
@@ -112,6 +114,13 @@ public:
*/
void* platformContext() const;
+ /**
+ * @brief Returns default resource options.
+ *
+ * @return Resource options.
+ */
+ static ResourceOptions Default();
+
private:
ResourceOptions(const ResourceOptions&);
diff --git a/include/mbgl/util/constants.hpp b/include/mbgl/util/constants.hpp
index 345733f22..678a7469d 100644
--- a/include/mbgl/util/constants.hpp
+++ b/include/mbgl/util/constants.hpp
@@ -59,7 +59,6 @@ constexpr UnitBezier DEFAULT_TRANSITION_EASE = { 0, 0, 0.25, 1 };
constexpr int DEFAULT_RATE_LIMIT_TIMEOUT = 5;
-constexpr const char* API_BASE_URL = "https://api.mapbox.com";
constexpr const char* ASSET_PROTOCOL = "asset://";
constexpr const char* FILE_PROTOCOL = "file://";
constexpr const char* MBTILES_PROTOCOL = "mbtiles://";
diff --git a/include/mbgl/util/default_style.hpp b/include/mbgl/util/default_style.hpp
new file mode 100644
index 000000000..b97d86ba9
--- /dev/null
+++ b/include/mbgl/util/default_style.hpp
@@ -0,0 +1,25 @@
+#pragma once
+
+#include
+#include
+#include
+
+namespace mbgl {
+namespace util {
+
+class DefaultStyle {
+public:
+ DefaultStyle(std::string, std::string, int);
+
+ const std::string& getUrl() const;
+ const std::string& getName() const;
+ int getCurrentVersion() const;
+
+private:
+ std::string url;
+ std::string name;
+ int currentVersion;
+};
+
+} // end namespace util
+} // end namespace mbgl
diff --git a/include/mbgl/util/default_styles.hpp b/include/mbgl/util/default_styles.hpp
deleted file mode 100644
index e1c53178b..000000000
--- a/include/mbgl/util/default_styles.hpp
+++ /dev/null
@@ -1,33 +0,0 @@
-#pragma once
-
-#include
-#include
-#include
-
-namespace mbgl {
-namespace util {
-namespace default_styles {
-
-struct DefaultStyle {
- const char* url;
- const char* name;
- const unsigned currentVersion;
-};
-
-// clang-format off
-constexpr const DefaultStyle streets = { "mapbox://styles/mapbox/streets-v11", "Streets", 11 };
-constexpr const DefaultStyle outdoors = { "mapbox://styles/mapbox/outdoors-v11", "Outdoors", 11 };
-constexpr const DefaultStyle light = { "mapbox://styles/mapbox/light-v10", "Light", 10 };
-constexpr const DefaultStyle dark = { "mapbox://styles/mapbox/dark-v10", "Dark", 10 };
-constexpr const DefaultStyle satellite = { "mapbox://styles/mapbox/satellite-v9", "Satellite", 9 };
-constexpr const DefaultStyle satelliteStreets = { "mapbox://styles/mapbox/satellite-streets-v11", "Satellite Streets", 11 };
-// clang-format on
-
-constexpr std::array orderedStyles = {
- {streets, outdoors, light, dark, satellite, satelliteStreets}};
-
-constexpr size_t numOrderedStyles = orderedStyles.size();
-
-} // end namespace default_styles
-} // end namespace util
-} // end namespace mbgl
diff --git a/include/mbgl/util/tile_server_options.hpp b/include/mbgl/util/tile_server_options.hpp
new file mode 100644
index 000000000..b1ade8cf3
--- /dev/null
+++ b/include/mbgl/util/tile_server_options.hpp
@@ -0,0 +1,288 @@
+#pragma once
+
+#include
+#include
+#include
+#include
+
+namespace mbgl {
+
+/**
+ * @brief Holds values for tile server options.
+ */
+ class TileServerOptions final {
+ public:
+ /**
+ * @brief Constructs a TileServerOptions object with default values.
+ */
+ explicit TileServerOptions();
+ ~TileServerOptions();
+
+ // movable
+ TileServerOptions(TileServerOptions&& options) noexcept;
+ TileServerOptions& operator=(TileServerOptions&& options) noexcept;
+
+ // copyable
+ TileServerOptions(const TileServerOptions&);
+
+
+ TileServerOptions clone() const;
+
+ /**
+ * @brief Sets the API base URL.
+ *
+ * @param baseURL API base URL.
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withBaseURL(std::string baseURL);
+
+ /**
+ * @brief Gets the previously set (or default) API base URL.
+ *
+ * @return const std::string& API base URL.
+ */
+ const std::string& baseURL() const;
+
+ /**
+ * @brief Sets the scheme alias for the tile server. For example maptiler:// for MapTiler.
+ *
+ * @param alias The URI alias.
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withUriSchemeAlias(std::string alias);
+
+ /**
+ * @brief Gets the previously set (or default) tile server URI alias.
+ *
+ * @return const std::string& scheme alias.
+ */
+ const std::string& uriSchemeAlias() const;
+
+ /**
+ * @brief Sets the template for sources.
+ *
+ * @param sourceTemplate The source template.
+ * @param domainName The domain name.
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withSourceTemplate(std::string sourceTemplate, std::string domainName, optional versionPrefix);
+
+ /**
+ * @brief Gets the previously set (or default) source template.
+ *
+ * @return const std::string& source template.
+ */
+ const std::string& sourceTemplate() const;
+
+ /**
+ * @brief Gets the previously set (or default) source domain name
+ *
+ * @return const std::string& source domain name.
+ */
+ const std::string& sourceDomainName() const;
+
+ /**
+ * @brief Gets the previously set (or default) version prefix
+ *
+ * @return const optional& version prefix.
+ */
+ const optional& sourceVersionPrefix() const;
+
+ /**
+ * @brief Sets the template for styles.
+ *
+ * @param styleTemplate The style template.
+ * @param domainName If set, the URL domain must contain the specified string to be matched as canonical style URL .
+ *
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withStyleTemplate(std::string styleTemplate, std::string domainName, optional versionPrefix);
+
+ /**
+ * @brief Gets the previously set (or default) style template.
+ *
+ * @return const std::string& style template.
+ */
+ const std::string& styleTemplate() const;
+
+ /**
+ * @brief Gets the previously set (or default) style domain name.
+ *
+ * @return const std::string& domain name.
+ */
+ const std::string& styleDomainName() const;
+
+ /**
+ * @brief Gets the previously set (or default) version prefix
+ *
+ * @return const optional& version prefix.
+ */
+ const optional& styleVersionPrefix() const;
+
+ /**
+ * @brief Sets the template for sprites.
+ * @param domainName If set, the URL domain must contain the specified string to be matched as canonical sprite URL .
+ *
+ * @param spritesTemplate The sprites template.
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withSpritesTemplate(std::string spritesTemplate, std::string domainName, optional versionPrefix);
+
+ /**
+ * @brief Gets the previously set (or default) sprites template.
+ *
+ * @return const std::string& sprites template.
+ */
+ const std::string& spritesTemplate() const;
+
+ /**
+ * @brief Gets the previously set (or default) sprites domain name.
+ *
+ * @return const std::string& domain name.
+ */
+ const std::string& spritesDomainName() const;
+
+ /**
+ * @brief Gets the previously set (or default) version prefix
+ *
+ * @return const optional& version prefix.
+ */
+ const optional& spritesVersionPrefix() const;
+
+ /**
+ * @brief Sets the template for glyphs.
+ *
+ * @param glyphsTemplate The glyphs template.
+ * @param domainName If set, the URL domain must contain the specified string to be matched as canonical glyphs URL .
+ *
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withGlyphsTemplate(std::string glyphsTemplate, std::string domainName, optional versionPrefix);
+
+ /**
+ * @brief Gets the previously set (or default) glyphs template.
+ *
+ * @return const std::string& glyphs template.
+ */
+ const std::string& glyphsTemplate() const;
+
+ /**
+ * @brief Gets the previously set (or default) glyphs domain name.
+ *
+ * @return const std::string& domain name.
+ */
+ const std::string& glyphsDomainName() const;
+
+ /**
+ * @brief Gets the previously set (or default) version prefix
+ *
+ * @return const optional& version prefix.
+ */
+ const optional& glyphsVersionPrefix() const;
+
+ /**
+ * @brief Sets the template for tiles.
+ *
+ * @param tileTemplate The tile template.
+ * @param domainName If set, the URL domain must contain the specified string to be matched as canonical tile URL .
+ *
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withTileTemplate(std::string tileTemplate, std::string domainName, optional versionPrefix);
+
+ /**
+ * @brief Gets the previously set (or default) tile template.
+ *
+ * @return const std::string& tile template.
+ */
+ const std::string& tileTemplate() const;
+
+ /**
+ * @brief Gets the previously set (or default) tile domain name.
+ *
+ * @return const std::string& domain name.
+ */
+ const std::string& tileDomainName() const;
+
+ /**
+ * @brief Gets the previously set (or default) version prefix
+ *
+ * @return const optional& version prefix.
+ */
+ const optional& tileVersionPrefix() const;
+
+ /**
+ * @brief Sets the access token parameter name.
+ *
+ * @param apiKeyParameterName The parameter name.
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withApiKeyParameterName(std::string apiKeyParameterName);
+
+ /**
+ * @brief Gets the previously set (or default) apiKeyParameterName.
+ *
+ * @return const std::string& apiKeyParameterName.
+ */
+ const std::string& apiKeyParameterName() const;
+
+ TileServerOptions& setRequiresApiKey(bool apiKeyRequired);
+
+ /**
+ * @brief Whether the tile server requires API key
+ *
+ * @return const bool true if API key is required
+ */
+ bool requiresApiKey() const;
+ /**
+ * @brief Gets the default styles.
+ */
+ const std::vector defaultStyles() const;
+
+ /**
+ * @brief Sets the collection default styles.
+ *
+ * @param styles The style set.
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withDefaultStyles(std::vector styles);
+
+ /**
+ * @brief Sets the default style by name. The style name must exists in defaultStyles collection
+ *
+ * @param defaultStyle The style name
+ * @return TileServerOptions for chaining options together.
+ */
+ TileServerOptions& withDefaultStyle(std::string defaultStyle);
+
+ /**
+ * @brief Get the default style name
+ */
+ const std::string& defaultStyle() const;
+
+ /**
+ * @brief Get the default configuration
+ */
+ static TileServerOptions DefaultConfiguration();
+
+ /**
+ * @brief Get the tile server options configured for MapLibre.
+ */
+ static TileServerOptions MapLibreConfiguration();
+
+ /**
+ * @brief Get the tile server options configured for Mapbox.
+ */
+ static TileServerOptions MapboxConfiguration();
+
+ /**
+ * @brief Get the tile server options configured for MapTiler.
+ */
+ static TileServerOptions MapTilerConfiguration();
+
+ private:
+ class Impl;
+ std::unique_ptr impl_;
+ };
+
+} // namespace mbgl
diff --git a/platform/android/CHANGELOG.md b/platform/android/CHANGELOG.md
index 2549cd46b..91751d68e 100644
--- a/platform/android/CHANGELOG.md
+++ b/platform/android/CHANGELOG.md
@@ -2,11 +2,15 @@
MapLibre welcomes participation and contributions from everyone. Please read [`Contributing Guide`](https://github.com/maplibre/maplibre-gl-native/blob/master/CONTRIBUTING.md) to get started.
-## master
+## 9.5.0 - June 29, 2021
### Features
-### Bug Fixes
+* Replacing hardcoded configuration with configurable API and removing Mapbox assets and dependencies [#90](https://github.com/maplibre/maplibre-gl-native/pull/90)
+
+### Other
+
+* Migration from bintray [#77](https://github.com/maplibre/maplibre-gl-native/pull/77)
## 9.4.2 - May 6, 2021
diff --git a/platform/android/Makefile b/platform/android/Makefile
index 391bfe9e0..22b18cb82 100644
--- a/platform/android/Makefile
+++ b/platform/android/Makefile
@@ -224,14 +224,14 @@ run-android-unit-test-%: gradle/configuration.gradle
$(MBGL_ANDROID_GRADLE) -Pmapbox.abis=none :MapboxGLAndroidSDK:testDebugUnitTest --info --tests "$*"
# Run unit test and build a coverage report from .exec file generated by unit tests and .ec file generated by instrumentation tests
-.PHONY: android-create-jacoco-report
-android-create-jacoco-report: gradle/configuration.gradle
- $(MBGL_ANDROID_GRADLE) -Pmapbox.abis=none :MapboxGLAndroidSDK:jacocoTestReport
+#.PHONY: android-create-jacoco-report
+#android-create-jacoco-report: gradle/configuration.gradle
+# $(MBGL_ANDROID_GRADLE) -Pmapbox.abis=none :MapboxGLAndroidSDK:jacocoTestReport
-# Parse merged jacoco report and send it to S3
-.PHONY: android-parse-and-send-jacoco-report
-android-parse-and-send-jacoco-report:
- python scripts/parse-jacoco-report.py
+## Parse merged jacoco report and send it to S3
+#.PHONY: android-parse-and-send-jacoco-report
+#android-parse-and-send-jacoco-report:
+# python scripts/parse-jacoco-report.py
# Builds a release package of the Android SDK
.PHONY: apackage
diff --git a/platform/android/MapboxGLAndroidSDK/build.gradle b/platform/android/MapboxGLAndroidSDK/build.gradle
index c21331a1d..b7afd2182 100644
--- a/platform/android/MapboxGLAndroidSDK/build.gradle
+++ b/platform/android/MapboxGLAndroidSDK/build.gradle
@@ -8,7 +8,6 @@ dependencies {
lintChecks project(":MapboxGLAndroidSDKLint")
api dependenciesList.mapboxJavaGeoJSON
api dependenciesList.mapboxAndroidGestures
- api dependenciesList.mapboxAndroidAccounts
implementation dependenciesList.mapboxJavaTurf
implementation dependenciesList.supportAnnotations
@@ -106,5 +105,5 @@ apply from: "${rootDir}/gradle/gradle-dependencies-graph.gradle"
apply from: "${rootDir}/gradle/gradle-update-vendor-modules.gradle"
apply from: "${rootDir}/gradle/android-nitpick.gradle"
apply from: "${rootDir}/gradle/gradle-publish.gradle"
-// Disabled to prevent timeouts
-// apply from: "${rootDir}/gradle/jacoco-report.gradle"
+// intentionally disabled
+// apply from: "${rootDir}/gradle/jacoco-report.gradle"
\ No newline at end of file
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/CMakeLists.txt b/platform/android/MapboxGLAndroidSDK/src/cpp/CMakeLists.txt
index a3deab8e6..7e0ffa111 100644
--- a/platform/android/MapboxGLAndroidSDK/src/cpp/CMakeLists.txt
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/CMakeLists.txt
@@ -183,7 +183,11 @@ add_library(mapbox-gl SHARED
${PROJECT_SOURCE_DIR}/style/transition_options.cpp
${PROJECT_SOURCE_DIR}/style/transition_options.hpp
${PROJECT_SOURCE_DIR}/style/value.cpp
- ${PROJECT_SOURCE_DIR}/style/value.hpp)
+ ${PROJECT_SOURCE_DIR}/style/value.hpp
+ ${PROJECT_SOURCE_DIR}/util/default_style.cpp
+ ${PROJECT_SOURCE_DIR}/util/tile_server_options.cpp
+ ${PROJECT_SOURCE_DIR}/util/default_style.hpp
+ ${PROJECT_SOURCE_DIR}/util/tile_server_options.hpp)
target_include_directories(
mapbox-gl
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/asset_manager_file_source.cpp b/platform/android/MapboxGLAndroidSDK/src/cpp/asset_manager_file_source.cpp
index a8045a2b9..aebe6eda1 100644
--- a/platform/android/MapboxGLAndroidSDK/src/cpp/asset_manager_file_source.cpp
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/asset_manager_file_source.cpp
@@ -3,6 +3,7 @@
#include
#include
#include
+#include
#include
#include
#include
@@ -15,8 +16,9 @@ namespace mbgl {
class AssetManagerFileSource::Impl {
public:
- Impl(ActorRef, AAssetManager* assetManager_) : assetManager(assetManager_) {
- }
+ Impl(ActorRef, AAssetManager* assetManager_, const ResourceOptions options) :
+ resourceOptions(options.clone()),
+ assetManager(assetManager_) {}
void request(const std::string& url, ActorRef req) {
// Note: AssetManager already prepends "assets" to the filename.
@@ -36,17 +38,28 @@ public:
req.invoke(&FileSourceRequest::setResponse, response);
}
+ void setResourceOptions(ResourceOptions options) {
+ resourceOptions = options;
+ }
+
+ ResourceOptions getResourceOptions() {
+ return resourceOptions.clone();
+ }
+
private:
AAssetManager* assetManager;
+ ResourceOptions resourceOptions;
};
AssetManagerFileSource::AssetManagerFileSource(jni::JNIEnv& env,
- const jni::Object& assetManager_)
+ const jni::Object& assetManager_,
+ const ResourceOptions options)
: assetManager(jni::NewGlobal(env, assetManager_)),
impl(std::make_unique>(
util::makeThreadPrioritySetter(platform::EXPERIMENTAL_THREAD_PRIORITY_FILE),
"AssetManagerFileSource",
- AAssetManager_fromJava(&env, jni::Unwrap(assetManager.get())))) {}
+ AAssetManager_fromJava(&env, jni::Unwrap(assetManager.get())),
+ options.clone())) {}
AssetManagerFileSource::~AssetManagerFileSource() = default;
@@ -62,4 +75,11 @@ bool AssetManagerFileSource::canRequest(const Resource& resource) const {
return 0 == resource.url.rfind(mbgl::util::ASSET_PROTOCOL, 0);
}
+void AssetManagerFileSource::setResourceOptions(ResourceOptions options) {
+ impl->actor().invoke(&Impl::setResourceOptions, options.clone());
+}
+
+ResourceOptions AssetManagerFileSource::getResourceOptions() {
+ return impl->actor().ask(&Impl::getResourceOptions).get();
+}
} // namespace mbgl
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/asset_manager_file_source.hpp b/platform/android/MapboxGLAndroidSDK/src/cpp/asset_manager_file_source.hpp
index bcbc6f1e9..7467e39cc 100644
--- a/platform/android/MapboxGLAndroidSDK/src/cpp/asset_manager_file_source.hpp
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/asset_manager_file_source.hpp
@@ -1,6 +1,7 @@
#pragma once
#include
+#include
#include "asset_manager.hpp"
@@ -14,12 +15,15 @@ template class Thread;
class AssetManagerFileSource : public FileSource {
public:
- AssetManagerFileSource(jni::JNIEnv&, const jni::Object&);
+ AssetManagerFileSource(jni::JNIEnv&, const jni::Object&, const ResourceOptions);
~AssetManagerFileSource() override;
std::unique_ptr request(const Resource&, Callback) override;
bool canRequest(const Resource&) const override;
+ void setResourceOptions(ResourceOptions options) override;
+ ResourceOptions getResourceOptions() override;
+
private:
class Impl;
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/file_source.cpp b/platform/android/MapboxGLAndroidSDK/src/cpp/file_source.cpp
index 8af8d6228..74980e493 100644
--- a/platform/android/MapboxGLAndroidSDK/src/cpp/file_source.cpp
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/file_source.cpp
@@ -19,24 +19,27 @@ namespace android {
// FileSource //
-FileSource::FileSource(jni::JNIEnv& _env, const jni::String& accessToken, const jni::String& _cachePath)
+FileSource::FileSource(jni::JNIEnv& _env, const jni::String& apiKey, const jni::String& _cachePath, const jni::Object& _options)
:activationCounter( optional(1)) {
std::string path = jni::Make(_env, _cachePath);
mapbox::sqlite::setTempPath(path);
mbgl::FileSourceManager::get()->registerFileSourceFactory(
- mbgl::FileSourceType::Asset, [](const mbgl::ResourceOptions&) {
+ mbgl::FileSourceType::Asset, [](const mbgl::ResourceOptions& opts) {
auto env{android::AttachEnv()};
std::unique_ptr assetFileSource;
if (android::Mapbox::hasInstance(*env)) {
auto assetManager = android::Mapbox::getAssetManager(*env);
- assetFileSource = std::make_unique(*env, assetManager);
+ assetFileSource = std::make_unique(*env, assetManager, opts.clone());
}
return assetFileSource;
});
- resourceOptions.withAccessToken(accessToken ? jni::Make(_env, accessToken) : "")
- .withCachePath(path + DATABASE_FILE);
+ auto tileServerOptions = TileServerOptions::getTileServerOptions(_env, _options);
+ resourceOptions
+ .withTileServerOptions(tileServerOptions)
+ .withApiKey(apiKey ? jni::Make(_env, apiKey) : "")
+ .withCachePath(path + DATABASE_FILE);
// Create a core file sources
// TODO: Split Android FileSource API to smaller interfaces
@@ -50,8 +53,16 @@ FileSource::FileSource(jni::JNIEnv& _env, const jni::String& accessToken, const
FileSource::~FileSource() {
}
-jni::Local FileSource::getAccessToken(jni::JNIEnv& env) {
- if (auto* token = onlineSource->getProperty(mbgl::ACCESS_TOKEN_KEY).getString()) {
+void FileSource::setTileServerOptions(jni::JNIEnv& _env, const jni::Object& _options) {
+ auto tileServerOptions = TileServerOptions::getTileServerOptions(_env, _options);
+ resourceOptions.withTileServerOptions(tileServerOptions);
+ resourceLoader->setResourceOptions(resourceOptions.clone());
+ databaseSource->setResourceOptions(resourceOptions.clone());
+ onlineSource->setResourceOptions(resourceOptions.clone());
+}
+
+jni::Local FileSource::getApiKey(jni::JNIEnv& env) {
+ if (auto* token = onlineSource->getProperty(mbgl::API_KEY_KEY).getString()) {
return jni::Make(env, *token);
}
@@ -59,9 +70,9 @@ jni::Local FileSource::getAccessToken(jni::JNIEnv& env) {
return jni::Make(env, "");
}
-void FileSource::setAccessToken(jni::JNIEnv& env, const jni::String& token) {
+void FileSource::setApiKey(jni::JNIEnv& env, const jni::String& token) {
if (onlineSource) {
- onlineSource->setProperty(mbgl::ACCESS_TOKEN_KEY, token ? jni::Make(env, token) : "");
+ onlineSource->setProperty(mbgl::API_KEY_KEY, token ? jni::Make(env, token) : "");
} else {
ThrowNew(env, jni::FindClass(env, "java/lang/IllegalStateException"), "Online functionality is disabled.");
}
@@ -75,6 +86,15 @@ void FileSource::setAPIBaseUrl(jni::JNIEnv& env, const jni::String& url) {
}
}
+jni::Local FileSource::getAPIBaseUrl(jni::JNIEnv& env) {
+ if (auto* url = onlineSource->getProperty(mbgl::API_BASE_URL_KEY).getString()) {
+ return jni::Make(env, *url);
+ }
+
+ ThrowNew(env, jni::FindClass(env, "java/lang/IllegalStateException"), "Online functionality is disabled.");
+ return jni::Make(env, "");
+}
+
void FileSource::setResourceTransform(jni::JNIEnv& env, const jni::Object& transformCallback) {
// Core could be built without support for network resource provider.
if (!onlineSource) {
@@ -214,12 +234,14 @@ void FileSource::registerNative(jni::JNIEnv& env) {
jni::RegisterNativePeer(env,
javaClass,
"nativePtr",
- jni::MakePeer,
+ jni::MakePeer&>,
"initialize",
"finalize",
- METHOD(&FileSource::getAccessToken, "getAccessToken"),
- METHOD(&FileSource::setAccessToken, "setAccessToken"),
+ METHOD(&FileSource::setTileServerOptions, "setTileServerOptions"),
+ METHOD(&FileSource::getApiKey, "getApiKey"),
+ METHOD(&FileSource::setApiKey, "setApiKey"),
METHOD(&FileSource::setAPIBaseUrl, "setApiBaseUrl"),
+ METHOD(&FileSource::getAPIBaseUrl, "getApiBaseUrl"),
METHOD(&FileSource::setResourceTransform, "setResourceTransform"),
METHOD(&FileSource::setResourceCachePath, "setResourceCachePath"),
METHOD(&FileSource::resume, "activate"),
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/file_source.hpp b/platform/android/MapboxGLAndroidSDK/src/cpp/file_source.hpp
index 3bf0fed2e..a4849cf87 100644
--- a/platform/android/MapboxGLAndroidSDK/src/cpp/file_source.hpp
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/file_source.hpp
@@ -9,6 +9,8 @@
#include
+#include "util/tile_server_options.hpp"
+
namespace mbgl {
template class Actor;
@@ -42,13 +44,17 @@ public:
const jni::String&);
};
- FileSource(jni::JNIEnv&, const jni::String&, const jni::String&);
+ FileSource(jni::JNIEnv&, const jni::String&, const jni::String&, const jni::Object&);
~FileSource();
- jni::Local getAccessToken(jni::JNIEnv&);
+ void setTileServerOptions(jni::JNIEnv& _env, const jni::Object& _options);
- void setAccessToken(jni::JNIEnv&, const jni::String&);
+ jni::Local getApiKey(jni::JNIEnv&);
+
+ void setApiKey(jni::JNIEnv&, const jni::String&);
+
+ jni::Local getAPIBaseUrl(jni::JNIEnv&);
void setAPIBaseUrl(jni::JNIEnv&, const jni::String&);
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/http_file_source.cpp b/platform/android/MapboxGLAndroidSDK/src/cpp/http_file_source.cpp
index 37f730737..b276985ce 100644
--- a/platform/android/MapboxGLAndroidSDK/src/cpp/http_file_source.cpp
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/http_file_source.cpp
@@ -1,5 +1,6 @@
#include
#include
+#include
#include
#include
@@ -16,7 +17,15 @@ namespace mbgl {
class HTTPFileSource::Impl {
public:
+ Impl(const ResourceOptions options): resourceOptions(options.clone()){};
+
android::UniqueEnv env { android::AttachEnv() };
+
+ void setResourceOptions(ResourceOptions options) {resourceOptions = options;};
+ ResourceOptions getResourceOptions() {return resourceOptions.clone(); };
+
+private:
+ ResourceOptions resourceOptions;
};
class HTTPRequest : public AsyncRequest {
@@ -182,8 +191,8 @@ void HTTPRequest::onFailure(jni::JNIEnv& env, int type, const jni::String& messa
async.send();
}
-HTTPFileSource::HTTPFileSource()
- : impl(std::make_unique()) {
+HTTPFileSource::HTTPFileSource(const ResourceOptions& options)
+ : impl(std::make_unique(options.clone())) {
}
HTTPFileSource::~HTTPFileSource() = default;
@@ -192,4 +201,12 @@ std::unique_ptr HTTPFileSource::request(const Resource& resource,
return std::make_unique(*impl->env, resource, callback);
}
+void HTTPFileSource::setResourceOptions(ResourceOptions options) {
+ impl->setResourceOptions(options.clone());
+}
+
+ResourceOptions HTTPFileSource::getResourceOptions() {
+ return impl->getResourceOptions();
+}
+
} // namespace mbgl
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/jni_native.cpp b/platform/android/MapboxGLAndroidSDK/src/cpp/jni_native.cpp
index d6b03d981..52b3016ff 100644
--- a/platform/android/MapboxGLAndroidSDK/src/cpp/jni_native.cpp
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/jni_native.cpp
@@ -34,6 +34,7 @@
#include "map_renderer_runnable.hpp"
#include "mapbox.hpp"
#include "native_map_view.hpp"
+#include "util/tile_server_options.hpp"
#ifndef MBGL_MODULE_OFFLINE_DISABLE
#include "offline/offline_manager.hpp"
#include "offline/offline_region.hpp"
@@ -162,6 +163,10 @@ void registerNatives(JavaVM *vm) {
// AssetManager
Mapbox::registerNative(env);
+
+ // Util
+ DefaultStyle::registerNative(env);
+ TileServerOptions::registerNative(env);
}
} // namespace android
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/util/default_style.cpp b/platform/android/MapboxGLAndroidSDK/src/cpp/util/default_style.cpp
new file mode 100644
index 000000000..fa5c9730a
--- /dev/null
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/util/default_style.cpp
@@ -0,0 +1,31 @@
+#include "default_style.hpp"
+
+namespace mbgl {
+namespace android {
+
+jni::Local> DefaultStyle::New(jni::JNIEnv& env, const mbgl::util::DefaultStyle& jDefaultStyle) {
+ static auto& javaClass = jni::Class::Singleton(env);
+ static auto constructor = javaClass.GetConstructor(env);
+ return javaClass.New(
+ env,
+ constructor,
+ jni::Make(env, jDefaultStyle.getUrl()),
+ jni::Make(env, jDefaultStyle.getName()),
+ jDefaultStyle.getCurrentVersion());
+}
+
+mbgl::util::DefaultStyle DefaultStyle::getDefaultStyle(jni::JNIEnv& env, const jni::Object& options) {
+ static auto& javaClass = jni::Class::Singleton(env);
+ return mbgl::util::DefaultStyle (
+ jni::Make(env, options.Get(env, javaClass.GetField(env, "url"))),
+ jni::Make(env, options.Get(env, javaClass.GetField(env, "name"))),
+ options.Get(env, javaClass.GetField(env, "version"))
+ );
+}
+
+void DefaultStyle::registerNative(jni::JNIEnv& env) {
+ jni::Class::Singleton(env);
+}
+
+} // namespace android
+} // namespace mbgl
\ No newline at end of file
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/util/default_style.hpp b/platform/android/MapboxGLAndroidSDK/src/cpp/util/default_style.hpp
new file mode 100644
index 000000000..5b788361f
--- /dev/null
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/util/default_style.hpp
@@ -0,0 +1,25 @@
+#pragma once
+
+#include
+#include
+
+#include
+
+namespace mbgl {
+namespace android {
+
+class DefaultStyle : private mbgl::util::noncopyable {
+public:
+
+ static constexpr auto Name() { return "com/mapbox/mapboxsdk/util/DefaultStyle"; };
+
+ static jni::Local> New(jni::JNIEnv&, const mbgl::util::DefaultStyle&);
+ static mbgl::util::DefaultStyle getDefaultStyle(jni::JNIEnv&, const jni::Object&);
+
+ static void registerNative(jni::JNIEnv&);
+
+};
+
+
+} // namespace android
+} // namespace mbgl
\ No newline at end of file
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/util/tile_server_options.cpp b/platform/android/MapboxGLAndroidSDK/src/cpp/util/tile_server_options.cpp
new file mode 100644
index 000000000..cd6120b51
--- /dev/null
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/util/tile_server_options.cpp
@@ -0,0 +1,178 @@
+#include "tile_server_options.hpp"
+
+namespace mbgl {
+namespace android {
+
+jni::Local> TileServerOptions::New(jni::JNIEnv& env, const mbgl::TileServerOptions& tileServerOptions) {
+ static auto& javaClass = jni::Class::Singleton(env);
+ static auto constructor = javaClass.GetConstructor<
+ jni::String, jni::String, jni::String, jni::String, jni::String, jni::String,
+ jni::String, jni::String, jni::String, jni::String, jni::String,
+ jni::String, jni::String, jni::String, jni::String, jni::String,
+ jni::String, jni::String, jni::jboolean, jni::String, jni::Array>>(env);
+
+ optional sourceVersionPrefixValue = tileServerOptions.sourceVersionPrefix();
+ optional styleVersionPrefixValue = tileServerOptions.styleVersionPrefix();
+ optional spritesVersionPrefixValue = tileServerOptions.spritesVersionPrefix();
+ optional glyphsVersionPrefixValue = tileServerOptions.glyphsVersionPrefix();
+ optional tileVersionPrefixValue = tileServerOptions.tileVersionPrefix();
+
+ return javaClass.New(env, constructor,
+ jni::Make(env, tileServerOptions.baseURL()),
+ jni::Make(env, tileServerOptions.uriSchemeAlias()),
+ jni::Make(env, tileServerOptions.sourceTemplate()),
+ jni::Make(env, tileServerOptions.sourceDomainName()),
+ sourceVersionPrefixValue ? jni::Make(env, *sourceVersionPrefixValue) : jni::Local(),
+ jni::Make(env, tileServerOptions.styleTemplate()),
+ jni::Make(env, tileServerOptions.styleDomainName()),
+ styleVersionPrefixValue ? jni::Make(env, *styleVersionPrefixValue) : jni::Local(),
+ jni::Make(env, tileServerOptions.spritesTemplate()),
+ jni::Make(env, tileServerOptions.spritesDomainName()),
+ spritesVersionPrefixValue ? jni::Make(env, *spritesVersionPrefixValue) : jni::Local(),
+ jni::Make(env, tileServerOptions.glyphsTemplate()),
+ jni::Make(env, tileServerOptions.glyphsDomainName()),
+ glyphsVersionPrefixValue ? jni::Make(env, *glyphsVersionPrefixValue) : jni::Local(),
+ jni::Make(env, tileServerOptions.tileTemplate()),
+ jni::Make(env, tileServerOptions.tileDomainName()),
+ tileVersionPrefixValue ? jni::Make(env, *tileVersionPrefixValue) : jni::Local(),
+ jni::Make(env, tileServerOptions.apiKeyParameterName()),
+ jni::jboolean(tileServerOptions.requiresApiKey()),
+ jni::Make(env, tileServerOptions.defaultStyle()),
+ TileServerOptions::NewStyles(env, tileServerOptions.defaultStyles())
+ );
+}
+
+jni::Local>> TileServerOptions::NewStyles(jni::JNIEnv& env, const std::vector nativeStyles) {
+
+ auto retVal = jni::Array>::New(env, nativeStyles.size());
+ for (auto it = begin(nativeStyles); it != end(nativeStyles); ++it) {
+ auto converted = DefaultStyle::New(env, *it);
+ retVal.Set(env, it - nativeStyles.begin(), converted);
+ }
+
+ return retVal;
+}
+
+jni::Local> TileServerOptions::DefaultConfiguration(jni::JNIEnv& env, const jni::Class& jOptions) {
+ auto options = mbgl::TileServerOptions::DefaultConfiguration();
+ return TileServerOptions::New(env, options);
+}
+
+jni::Local> TileServerOptions::MapboxConfiguration(jni::JNIEnv& env, const jni::Class& jOptions) {
+ auto options = mbgl::TileServerOptions::MapboxConfiguration();
+ return TileServerOptions::New(env, options);
+}
+
+jni::Local> TileServerOptions::MapTilerConfiguration(jni::JNIEnv& env, const jni::Class& jOptions) {
+ auto options = mbgl::TileServerOptions::MapTilerConfiguration();
+ return TileServerOptions::New(env, options);
+}
+
+jni::Local> TileServerOptions::MapLibreConfiguration(jni::JNIEnv& env, const jni::Class& jOptions) {
+ auto options = mbgl::TileServerOptions::MapLibreConfiguration();
+ return TileServerOptions::New(env, options);
+}
+
+mbgl::TileServerOptions TileServerOptions::getTileServerOptions(jni::JNIEnv& env, const jni::Object& options) {
+ auto opts = mbgl::TileServerOptions();
+ static auto& javaClass = jni::Class::Singleton(env);
+
+ static auto baseURLField = javaClass.GetField(env, "baseURL");
+
+ static auto uriSchemeAliasField = javaClass.GetField(env, "uriSchemeAlias");
+
+ static auto sourceTemplateField = javaClass.GetField(env, "sourceTemplate");
+ static auto sourceDomainNameField = javaClass.GetField(env, "sourceDomainName");
+ static auto sourceVersionPrefixField = javaClass.GetField(env, "sourceVersionPrefix");
+
+ static auto styleTemplateField = javaClass.GetField(env, "styleTemplate");
+ static auto styleDomainNameField = javaClass.GetField(env, "styleDomainName");
+ static auto styleVersionPrefixField = javaClass.GetField(env, "styleVersionPrefix");
+
+ static auto spritesTemplateField = javaClass.GetField(env, "spritesTemplate");
+ static auto spritesDomainNameField = javaClass.GetField(env, "spritesDomainName");
+ static auto spritesVersionPrefixField = javaClass.GetField(env, "spritesVersionPrefix");
+
+ static auto glyphsTemplateField = javaClass.GetField(env, "glyphsTemplate");
+ static auto glyphsDomainNameField = javaClass.GetField(env, "glyphsDomainName");
+ static auto glyphsVersionPrefixField = javaClass.GetField(env, "glyphsVersionPrefix");
+
+ static auto tileTemplateField = javaClass.GetField(env, "tileTemplate");
+ static auto tileDomainNameField = javaClass.GetField(env, "tileDomainName");
+ static auto tileVersionPrefixField = javaClass.GetField(env, "tileVersionPrefix");
+
+ static auto apiKeyParameterNameField = javaClass.GetField(env, "apiKeyParameterName");
+ static auto apiKeyRequiredField = javaClass.GetField(env, "apiKeyRequired");
+
+ static auto defaultStyleField = javaClass.GetField(env, "defaultStyle");
+
+ static auto defaultStylesField = javaClass.GetField>>(env, "defaultStyles");
+ std::vector defaultStyles = TileServerOptions::getDefaultStyles(env, options.Get(env, defaultStylesField));
+
+ auto retVal = mbgl::TileServerOptions()
+ .withBaseURL(jni::Make(env, options.Get(env, baseURLField)))
+ .withUriSchemeAlias(jni::Make(env, options.Get(env, uriSchemeAliasField)))
+ .withApiKeyParameterName(jni::Make(env, options.Get(env, apiKeyParameterNameField)))
+ .setRequiresApiKey(options.Get(env, apiKeyRequiredField));
+
+ auto sourcePrefixValue = options.Get(env, sourceVersionPrefixField);
+ retVal.withSourceTemplate(
+ jni::Make(env, options.Get(env, sourceTemplateField)),
+ jni::Make(env, options.Get(env, sourceDomainNameField)),
+ sourcePrefixValue ? jni::Make(env, sourcePrefixValue): optional{});
+
+ auto styleVersionPrefixValue = options.Get(env, styleVersionPrefixField);
+ retVal.withStyleTemplate(
+ jni::Make(env, options.Get(env, styleTemplateField)),
+ jni::Make(env, options.Get(env, styleDomainNameField)),
+ styleVersionPrefixValue ? jni::Make(env, styleVersionPrefixValue): optional{});
+
+ auto spritesVersionPrefixValue = options.Get(env, spritesVersionPrefixField);
+ retVal.withSpritesTemplate(
+ jni::Make(env, options.Get(env, spritesTemplateField)),
+ jni::Make(env, options.Get(env, spritesDomainNameField)),
+ spritesVersionPrefixValue ? jni::Make(env, spritesVersionPrefixValue): optional{});
+
+ auto glyphsVersionPrefixValue = options.Get(env, glyphsVersionPrefixField);
+ retVal.withGlyphsTemplate(
+ jni::Make(env, options.Get(env, glyphsTemplateField)),
+ jni::Make(env, options.Get(env, glyphsDomainNameField)),
+ glyphsVersionPrefixValue ? jni::Make(env, glyphsVersionPrefixValue) : optional{});
+
+ auto tileVersionPrefixValue = options.Get(env, tileVersionPrefixField);
+ retVal.withTileTemplate(
+ jni::Make(env, options.Get(env, tileTemplateField)),
+ jni::Make(env, options.Get(env, tileDomainNameField)),
+ tileVersionPrefixValue ? jni::Make(env, tileVersionPrefixValue): optional{});
+
+ retVal.withDefaultStyle(jni::Make(env, options.Get(env, defaultStyleField)));
+ retVal.withDefaultStyles(defaultStyles);
+
+ return retVal;
+}
+
+std::vector TileServerOptions::getDefaultStyles(jni::JNIEnv& env, const jni::Array>& styles_) {
+
+ std::size_t length = styles_.Length(env);
+ std::vector convertedStyles;
+ //convertedStyles.reserve(length);
+ for (std::size_t i = 0; i < length; i++) {
+ const mbgl::util::DefaultStyle converted = DefaultStyle::getDefaultStyle(env, styles_.Get(env, i));
+ convertedStyles.push_back(converted);
+ }
+
+ return convertedStyles;
+}
+
+void TileServerOptions::registerNative(jni::JNIEnv& env) {
+ static auto& javaClass = jni::Class::Singleton(env);
+ jni::RegisterNatives(env,
+ *javaClass,
+ jni::MakeNativeMethod("defaultConfiguration"),
+ jni::MakeNativeMethod("mapboxConfiguration"),
+ jni::MakeNativeMethod("mapTilerConfiguration"),
+ jni::MakeNativeMethod("mapLibreConfiguration"));
+}
+
+} // namespace android
+} // namespace mbgl
\ No newline at end of file
diff --git a/platform/android/MapboxGLAndroidSDK/src/cpp/util/tile_server_options.hpp b/platform/android/MapboxGLAndroidSDK/src/cpp/util/tile_server_options.hpp
new file mode 100644
index 000000000..2237a3517
--- /dev/null
+++ b/platform/android/MapboxGLAndroidSDK/src/cpp/util/tile_server_options.hpp
@@ -0,0 +1,38 @@
+#pragma once
+
+#include
+#include
+#include
+
+#include
+
+#include "default_style.hpp"
+
+namespace mbgl {
+namespace android {
+
+class TileServerOptions : private mbgl::util::noncopyable {
+public:
+
+ static constexpr auto Name() { return "com/mapbox/mapboxsdk/util/TileServerOptions"; };
+
+ static jni::Local> New(jni::JNIEnv&, const mbgl::TileServerOptions&);
+
+ static jni::Local> DefaultConfiguration(jni::JNIEnv&, const jni::Class&);
+ static jni::Local> MapboxConfiguration(jni::JNIEnv&, const jni::Class&);
+ static jni::Local