summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorartemp <artem@mapnik.org>2014-11-03 10:43:55 +0000
committerartemp <artem@mapnik.org>2014-11-03 10:43:55 +0000
commit4a5d4ea0aa823871b504a9189d08667daf91b63c (patch)
treea1d48291592dff3bdd0e73f4e0c163961d8c5336
parent318d08706fdf1ee8e32ed00c96d2e8506a9a9935 (diff)
parent551ff954a5e30c89c27f59a9848ba0a9be871adc (diff)
downloadqtlocation-mapboxgl-4a5d4ea0aa823871b504a9189d08667daf91b63c.tar.gz
Merge branch 'master' into nunicode
Conflicts: configure styles
-rw-r--r--.gitignore4
-rw-r--r--.gitmodules12
m---------.mason0
-rw-r--r--.travis.yml4
-rw-r--r--README.md1
-rwxr-xr-xbin/build-shaders.js133
-rw-r--r--bin/lazy-update.js12
-rw-r--r--bin/package.json8
-rwxr-xr-xconfigure42
-rw-r--r--deps/gtest/gtest.gyp4
-rw-r--r--gyp/common.gypi1
-rw-r--r--gyp/fixtures.gypi17
-rw-r--r--gyp/install.gypi1
-rw-r--r--gyp/mbgl-core.gypi1
-rw-r--r--gyp/mbgl-ios.gypi9
-rw-r--r--gyp/mbgl-linux.gypi9
-rw-r--r--gyp/mbgl-osx.gypi9
-rw-r--r--gyp/npm_install.gypi20
-rw-r--r--gyp/shaders.gypi6
-rw-r--r--gyp/styles.gypi14
-rw-r--r--include/mbgl/platform/default/headless_view.hpp2
-rw-r--r--include/mbgl/platform/gl.hpp1
-rw-r--r--include/mbgl/util/image.hpp14
-rw-r--r--include/mbgl/util/token.hpp2
m---------ios/mapbox-gl-cocoa0
-rw-r--r--linux/main.cpp2
-rw-r--r--linux/mapboxgl-app.gyp30
-rw-r--r--macosx/main.mm2
-rw-r--r--macosx/mapboxgl-app.gyp3
-rw-r--r--mapboxgl.gyp2
-rw-r--r--platform/darwin/image.mm125
-rw-r--r--platform/default/headless_view.cpp4
-rw-r--r--platform/default/image.cpp (renamed from src/util/image.cpp)30
-rw-r--r--scripts/build-shaders.py104
-rwxr-xr-xscripts/compare_images.sh6
-rwxr-xr-xscripts/local_mason.sh5
-rwxr-xr-xscripts/travis_before_install.sh28
-rwxr-xr-xscripts/travis_install_test_suite.sh9
-rwxr-xr-xscripts/travis_script.sh19
-rw-r--r--src/geometry/sprite_atlas.cpp14
-rw-r--r--src/map/sprite.cpp3
m---------styles0
-rw-r--r--styles/bright/img/sprite.json2818
-rw-r--r--styles/bright/img/sprite.pngbin118946 -> 0 bytes
-rw-r--r--styles/bright/img/sprite@2x.json2818
-rw-r--r--styles/bright/img/sprite@2x.pngbin272040 -> 0 bytes
-rw-r--r--styles/bright/style.json1335
-rw-r--r--styles/outdoors/style.json2223
-rw-r--r--test/fixtures/fixture_request.cpp2
-rw-r--r--test/headless.cpp16
m---------test/suite0
-rw-r--r--test/test.gyp5
52 files changed, 385 insertions, 9544 deletions
diff --git a/.gitignore b/.gitignore
index f8bb8a0b27..c907dbdec5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,16 +3,12 @@
*.o
*.actual.png
*.diff.png
-/node_modules
/mason_packages
/config.gypi
/config-ios.gypi
/config/constants_local.cpp
/build
-/bin/node_modules
/include/mbgl/shader/shaders.hpp
/src/shader/shaders_gl.cpp
/src/shader/shaders_gles2.cpp
/bin/style.bin.js
-/test/fixtures/styles/index.html
-/test/fixtures/style_parser/styles
diff --git a/.gitmodules b/.gitmodules
index a1359e7398..588802377e 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,15 @@
[submodule "ios/mapbox-gl-cocoa"]
path = ios/mapbox-gl-cocoa
url = https://github.com/mapbox/mapbox-gl-cocoa.git
+
+[submodule "test/suite"]
+ path = test/suite
+ url = https://github.com/mapbox/mapbox-gl-test-suite.git
+
+[submodule ".mason"]
+ path = .mason
+ url = https://github.com/mapbox/mason.git
+
+[submodule "styles"]
+ path = styles
+ url = https://github.com/mapbox/mapbox-gl-styles.git
diff --git a/.mason b/.mason
new file mode 160000
+Subproject 462fe28479ea700943abd2fde15b03038a168da
diff --git a/.travis.yml b/.travis.yml
index 065856d605..a7c7109f03 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -25,15 +25,15 @@ env:
- LD_LIBRARY_PATH: '/usr/local/lib'
before_install:
+- source ./scripts/local_mason.sh
- source ./scripts/travis_helper.sh
- source ./scripts/flags.sh
-- (git clone https://github.com/mapbox/mason.git ~/.mason ; sudo ln -s ~/.mason/mason /usr/local/bin/mason)
- ./scripts/travis_before_install.sh
+- if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then export LD_LIBRARY_PATH=`mason prefix mesa 10.3.1`/lib; fi
- if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then glxinfo; fi
install:
- make config.gypi
-- ./scripts/travis_install_test_suite.sh
- ulimit -c
before_script:
diff --git a/README.md b/README.md
index 325a9225a1..022377e990 100644
--- a/README.md
+++ b/README.md
@@ -16,7 +16,6 @@ implemented in C++11, currently targeting iOS, OS X, and Ubuntu Linux.
- `pkg-config` (for build only)
- [Homebrew](http://brew.sh) (for build on OS X)
- Python 2.x (for build only)
- - Node.js (for build only)
# Build instructions
diff --git a/bin/build-shaders.js b/bin/build-shaders.js
deleted file mode 100755
index 329f8063f7..0000000000
--- a/bin/build-shaders.js
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-
-var fs = require('fs');
-var path = require('path');
-var mkdirp = require('mkdirp');
-
-try { var glsl = require('mapbox-glsl-optimizer'); } catch(err) {}
-
-module.exports = function(shader_type, prefix, suffix) {
- var name;
- var shaders = {};
-
- var shaderFiles = fs.readdirSync('src/shader');
-
- // Load shaders
- for (var i = 0; i < shaderFiles.length; i++) {
- var parts = shaderFiles[i].match(/^(.+)\.(vertex|fragment)\.glsl$/);
- if (parts) {
- name = parts[1];
- var type = parts[2];
- if (!(name in shaders)) {
- shaders[name] = {};
- }
- shaders[name][type] = fs.readFileSync(path.join('src/shader', shaderFiles[i]), 'utf8');
- }
- }
-
- var preamble = '';
- if (shader_type == 'gles2' || shader_type == 'gles3') {
- preamble = 'precision highp float;';
- } else {
- preamble = '#version 120';
- }
-
- for (var name in shaders) {
- shaders[name].vertex = preamble + '\n' + shaders[name].vertex;
- shaders[name].fragment = preamble + '\n' + shaders[name].fragment;
- }
-
- // Optimize shader
- if (glsl) {
- var target = shader_type == 'gles2' ? glsl.TARGET_OPENGLES20 : (shader_type == 'gles3' ? glsl.TARGET_OPENGLES30 : glsl.TARGET_OPENGL);
-
- var compiler = new glsl.Compiler(target);
- for (name in shaders) {
- var vertex_shader = new glsl.Shader(compiler, glsl.VERTEX_SHADER, shaders[name].vertex);
- if (vertex_shader.compiled()) {
- shaders[name].vertex = vertex_shader.output();
- } else {
- console.warn('failed to optimize %s vertex shader', name);
- process.exit(1);
- }
- vertex_shader.dispose();
-
- var fragment_shader = new glsl.Shader(compiler, glsl.FRAGMENT_SHADER, shaders[name].fragment);
- if (fragment_shader.compiled()) {
- shaders[name].fragment = fragment_shader.output();
- } else {
- console.warn('failed to optimize %s fragment shader', name);
- process.exit(1);
- }
- fragment_shader.dispose();
- }
- compiler.dispose();
- } else {
- console.warn('Not optimizing shaders');
- }
-
-
- // Save to file
- var lines = [];
- var consts = [];
- for (var name in shaders) {
- consts.push(name.toUpperCase() + '_SHADER');
-
- var line = '';
- line += ' {\n';
- line += ' ' + JSON.stringify(shaders[name].vertex) + ',\n';
- line += ' ' + JSON.stringify(shaders[name].fragment) + ',\n';
- line += ' }';
- lines.push(line);
- }
-
- var header = '// NOTE: DO NOT CHANGE THIS FILE. IT IS AUTOMATICALLY GENERATED.\n\n';
- header += '#ifndef MBGL_SHADER_SHADERS\n';
- header += '#define MBGL_SHADER_SHADERS\n';
- header += '\n';
- header += 'namespace mbgl {\n';
- header += '\n';
- header += 'struct shader_source {\n';
- header += ' const char *vertex;\n';
- header += ' const char *fragment;\n';
- header += '};\n';
- header += '\n';
- header += 'enum {\n';
- consts.push('SHADER_COUNT');
- header += ' ' + consts.join(',\n ') + '\n';
- header += '};\n';
- header += '\n';
- header += 'extern const shader_source shaders[SHADER_COUNT];\n';
- header += '\n';
- header += '}\n';
- header += '\n';
- header += '#endif\n';
-
-
- var code = '// NOTE: DO NOT CHANGE THIS FILE. IT IS AUTOMATICALLY GENERATED.\n';
- code += '#include <mbgl/platform/gl.hpp>\n';
- code += prefix + '\n';
- code += '#include <mbgl/shader/shaders.hpp>\n';
- code += '\n';
- code += 'namespace mbgl {\n';
- code += '\n';
- code += 'const shader_source shaders[SHADER_COUNT] = {\n';
- code += lines.join(',\n');
- code += '\n};\n';
- code += '\n}\n';
- code += suffix + '\n';
-
- var header_path = path.join(process.argv[2], 'include/mbgl/shader/shaders.hpp');
- mkdirp.sync(path.dirname(header_path));
- fs.writeFileSync(header_path, header);
- console.warn('wrote file ' + header_path);
- var file_path = path.join(process.argv[2], 'src/shader/shaders_' + shader_type + '.cpp');
- mkdirp.sync(path.dirname(file_path));
- fs.writeFileSync(file_path, code);
- console.warn('wrote file ' + file_path);
-
-};
-
-module.exports('gl', '#ifndef GL_ES_VERSION_2_0', '#endif');
-module.exports('gles2', '#ifdef GL_ES_VERSION_2_0', '#endif');
diff --git a/bin/lazy-update.js b/bin/lazy-update.js
deleted file mode 100644
index 0f3ea81ac5..0000000000
--- a/bin/lazy-update.js
+++ /dev/null
@@ -1,12 +0,0 @@
-var fs = require('fs');
-
-module.exports = function(file, content) {
- try {
- var existing = fs.readFileSync(file, 'utf8');
- if (existing != content) {
- fs.writeFileSync(file, content);
- }
- } catch(err) {
- fs.writeFileSync(file, content);
- }
-};
diff --git a/bin/package.json b/bin/package.json
deleted file mode 100644
index 1df8454600..0000000000
--- a/bin/package.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "name": "mbgl-native",
- "version": "0.0.1",
- "dependencies": {
- "mapbox-glsl-optimizer": "~0.1.0",
- "mkdirp": "^0.5.0"
- }
-}
diff --git a/configure b/configure
index 6894a7b275..8c8a07c1d8 100755
--- a/configure
+++ b/configure
@@ -2,52 +2,32 @@
set -e
set -o pipefail
-shopt -s expand_aliases
CONFIG_FILE=${1:-config.gypi}
+if [ `uname -s` = 'Darwin' ]; then
+ MASON_PLATFORM=${MASON_PLATFORM:-osx}
+fi
+
function finish {
>&2 echo -en "\033[0m";
}
trap finish EXIT
-# Install node
-if [[ ! -d ~/.nvm ]]; then
- git clone --depth 1 https://github.com/creationix/nvm.git ~/.nvm
-fi
-set +u
-. ~/.nvm/nvm.sh
-if [ ! `nvm use 0.10 > /dev/null; echo $?` = 0 ]; then
- >&2 echo -en "\033[1m\033[32m* "
- nvm install 0.10
- >&2 echo -en "\033[0m";
-else
- >&2 echo -en "\033[1m\033[32m* "
- nvm use 0.10
- >&2 echo -en "\033[0m";
-fi
-
# Install mason
-if [[ ! -d ~/.mason ]]; then
- >&2 echo -e "\033[1m\033[32m* Installing Mason\033[0m"
- git clone https://github.com/mapbox/mason.git ~/.mason
-fi
-alias mason='~/.mason/mason'
-
+. ./scripts/local_mason.sh
-case $MASON_PLATFORM in
+case ${MASON_PLATFORM} in
'ios')
SQLITE_VERSION=system
- LIBPNG_VERSION=1.6.13
LIBUV_VERSION=0.10.28
ZLIB_VERSION=system
BOOST_VERSION=system
- NUNICODE_VERSION=1.4
;;
*)
GLFW_VERSION=a21f2377
SQLITE_VERSION=system
- LIBPNG_VERSION=system
+ LIBPNG_VERSION=1.6.13
LIBCURL_VERSION=system
LIBUV_VERSION=0.10.28
ZLIB_VERSION=system
@@ -58,14 +38,8 @@ esac
function abort { >&2 echo -e "\033[1m\033[31m$1\033[0m"; exit 1; }
-NODE=`which node || abort 'Cannot find node'`
-NPM=`which npm || abort 'Cannot find npm'`
PYTHON=`which python || abort 'Cannot find python'`
->&2 echo -en "\033[1m\033[32m* Using npm "
->&2 ${NPM} --version
->&2 echo -en "\033[0m";
-
>&2 echo -en "\033[1m\033[32m* Using "
>&2 ${PYTHON} --version
>&2 echo -en "\033[0m";
@@ -86,8 +60,6 @@ CONFIG="# Do not edit. Generated by the configure script.
'libraries': []
},
'variables': {
- 'node': '${NODE}',
- 'npm': '${NPM}',
'python': '${PYTHON}',
"
diff --git a/deps/gtest/gtest.gyp b/deps/gtest/gtest.gyp
index c62b6be3f8..3728dfc914 100644
--- a/deps/gtest/gtest.gyp
+++ b/deps/gtest/gtest.gyp
@@ -12,6 +12,10 @@
'sources': [
'gtest-all.cc'
],
+ 'link_settings': {
+ 'xcode_settings': { 'OTHER_LDFLAGS': [ '-lpthread' ] },
+ 'ldflags': [ '-lpthread' ],
+ },
'direct_dependent_settings': {
'include_dirs': [
'.',
diff --git a/gyp/common.gypi b/gyp/common.gypi
index 16025eb5ae..b21e8b50d7 100644
--- a/gyp/common.gypi
+++ b/gyp/common.gypi
@@ -8,6 +8,7 @@
'conditions': [
['OS=="mac"', {
'xcode_settings': {
+ 'MACOSX_DEPLOYMENT_TARGET':'10.9',
'CLANG_CXX_LIBRARY': 'libc++',
'CLANG_CXX_LANGUAGE_STANDARD':'c++11',
'GCC_VERSION': 'com.apple.compilers.llvm.clang.1_0',
diff --git a/gyp/fixtures.gypi b/gyp/fixtures.gypi
deleted file mode 100644
index 199865a6f3..0000000000
--- a/gyp/fixtures.gypi
+++ /dev/null
@@ -1,17 +0,0 @@
-{
- 'targets': [
- { 'target_name': 'copy_fixtures',
- 'type': 'none',
- 'hard_dependency': 1,
- 'dependencies': [
- 'bundle_styles'
- ],
- 'copies': [
- {
- 'files': [ '../styles' ],
- 'destination': '../test/fixtures/style_parser'
- }
- ]
- },
- ]
-}
diff --git a/gyp/install.gypi b/gyp/install.gypi
index 562f443d16..df65d0457e 100644
--- a/gyp/install.gypi
+++ b/gyp/install.gypi
@@ -22,7 +22,6 @@
'conditions': [
['OS == "linux"', {
'other_ldflags': [
- '-L<(boost_root)/lib',
'<@(glfw3_static_libs)',
'<@(glfw3_ldflags)',
]
diff --git a/gyp/mbgl-core.gypi b/gyp/mbgl-core.gypi
index e49697388c..46ff762742 100644
--- a/gyp/mbgl-core.gypi
+++ b/gyp/mbgl-core.gypi
@@ -10,7 +10,6 @@
],
'variables': {
'cflags_cc': [
- '<@(png_cflags)',
'<@(uv_cflags)',
'<@(sqlite3_cflags)',
'<@(zlib_cflags)',
diff --git a/gyp/mbgl-ios.gypi b/gyp/mbgl-ios.gypi
index 755b3cc483..5566ca3a32 100644
--- a/gyp/mbgl-ios.gypi
+++ b/gyp/mbgl-ios.gypi
@@ -34,6 +34,7 @@
'../platform/darwin/log_nslog.mm',
'../platform/darwin/string_nsstring.mm',
'../platform/darwin/http_request_baton_cocoa.mm',
+ '../platform/darwin/image.mm',
],
'include_dirs': [
'../include',
@@ -44,7 +45,13 @@
'direct_dependent_settings': {
'include_dirs': [
'../include',
- ]
+ ],
+ 'xcode_settings': {
+ 'OTHER_LDFLAGS': [
+ '-framework ImageIO',
+ '-framework MobileCoreServices',
+ ],
+ },
},
},
],
diff --git a/gyp/mbgl-linux.gypi b/gyp/mbgl-linux.gypi
index 9f01ba3bb5..a22bd8f7c2 100644
--- a/gyp/mbgl-linux.gypi
+++ b/gyp/mbgl-linux.gypi
@@ -7,6 +7,7 @@
'hard_dependency': 1,
'variables': {
'cflags_cc': [
+ '<@(png_cflags)',
'<@(uv_cflags)',
'<@(curl_cflags)',
'<@(nu_cflags)',
@@ -16,6 +17,7 @@
'<@(nu_cflags)',
],
'ldflags': [
+ '<@(png_ldflags)',
'<@(uv_ldflags)',
'<@(curl_ldflags)',
'<@(nu_ldflags)',
@@ -26,10 +28,16 @@
'../platform/default/log_stderr.cpp',
'../platform/default/string_stdlib.cpp',
'../platform/default/http_request_baton_curl.cpp',
+ '../platform/default/image.cpp',
],
'include_dirs': [
'../include',
],
+ 'link_settings': {
+ 'libraries': [
+ '<@(png_static_libs)',
+ ],
+ },
'conditions': [
['OS == "mac"', {
'xcode_settings': {
@@ -37,7 +45,6 @@
'OTHER_CFLAGS': [ '<@(cflags)' ],
}
}, {
- 'ldflags': [ '<@(ldflags)' ],
'cflags_cc': [ '<@(cflags_cc)' ],
'cflags': [ '<@(cflags)' ],
}]
diff --git a/gyp/mbgl-osx.gypi b/gyp/mbgl-osx.gypi
index bee0325498..76c22f5ad6 100644
--- a/gyp/mbgl-osx.gypi
+++ b/gyp/mbgl-osx.gypi
@@ -10,6 +10,7 @@
'../platform/darwin/log_nslog.mm',
'../platform/darwin/string_nsstring.mm',
'../platform/darwin/http_request_baton_cocoa.mm',
+ '../platform/darwin/image.mm',
],
'include_dirs': [
'../include',
@@ -20,7 +21,13 @@
'direct_dependent_settings': {
'include_dirs': [
'../include',
- ]
+ ],
+ 'xcode_settings': {
+ 'OTHER_LDFLAGS': [
+ '-framework ImageIO',
+ '-framework CoreServices',
+ ],
+ },
},
},
],
diff --git a/gyp/npm_install.gypi b/gyp/npm_install.gypi
deleted file mode 100644
index ddd3081ad5..0000000000
--- a/gyp/npm_install.gypi
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- 'targets': [
- { 'target_name': 'npm_install',
- 'type': 'none',
- 'hard_dependency': 1,
- 'actions': [
- {
- 'action_name': 'npm install',
- 'inputs': [
- '../bin/package.json',
- ],
- 'outputs': [
- '../bin/node_modules',
- ],
- 'action': ['./scripts/npm_install.sh', '<@(npm)']
- }
- ],
- },
- ]
-}
diff --git a/gyp/shaders.gypi b/gyp/shaders.gypi
index 9435bd7d9c..edbcb61f23 100644
--- a/gyp/shaders.gypi
+++ b/gyp/shaders.gypi
@@ -4,13 +4,11 @@
'target_name': 'shaders',
'type': 'none',
'hard_dependency': 1,
- 'dependencies': [
- 'npm_install'
- ],
'actions': [
{
'action_name': 'Build Shaders',
'inputs': [
+ '../scripts/build-shaders.py',
'<!@(find src -name "*.glsl")'
],
'outputs': [
@@ -18,7 +16,7 @@
'<(SHARED_INTERMEDIATE_DIR)/src/shader/shaders_gl.cpp',
'<(SHARED_INTERMEDIATE_DIR)/src/shader/shaders_gles2.cpp',
],
- 'action': ['<@(node)', 'bin/build-shaders.js', '<(SHARED_INTERMEDIATE_DIR)'],
+ 'action': ['<@(python)', 'scripts/build-shaders.py', '<(SHARED_INTERMEDIATE_DIR)', '<@(_inputs)'],
}
],
'direct_dependent_settings': {
diff --git a/gyp/styles.gypi b/gyp/styles.gypi
index 31bf530c5f..02cdea6e04 100644
--- a/gyp/styles.gypi
+++ b/gyp/styles.gypi
@@ -19,18 +19,8 @@
'hard_dependency': 1,
'dependencies': [ 'touch_styles' ], # required for xcode http://openradar.appspot.com/7232149
'direct_dependent_settings': {
- 'mac_bundle_resources': [ '../styles' ],
+ 'mac_bundle_resources': [ '../styles/styles' ],
}
- },
- {
- 'target_name': 'copy_styles',
- 'type': 'none',
- 'hard_dependency': 1,
- 'dependencies': [ 'touch_styles' ], # required for xcode http://openradar.appspot.com/7232149
- 'copies': [{
- 'files': [ '../styles' ],
- 'destination': '<(PRODUCT_DIR)'
- }],
- },
+ }
]
}
diff --git a/include/mbgl/platform/default/headless_view.hpp b/include/mbgl/platform/default/headless_view.hpp
index c0baddb884..f140338349 100644
--- a/include/mbgl/platform/default/headless_view.hpp
+++ b/include/mbgl/platform/default/headless_view.hpp
@@ -27,7 +27,7 @@ public:
void createContext();
void resize(uint16_t width, uint16_t height, float pixelRatio);
- const std::unique_ptr<uint32_t[]> readPixels();
+ std::unique_ptr<uint32_t[]> readPixels();
void notify();
void notify_map_change(MapChange change, timestamp delay = 0);
diff --git a/include/mbgl/platform/gl.hpp b/include/mbgl/platform/gl.hpp
index cc2a681d42..d5162f2c70 100644
--- a/include/mbgl/platform/gl.hpp
+++ b/include/mbgl/platform/gl.hpp
@@ -38,7 +38,6 @@
#else
#define GL_GLEXT_PROTOTYPES
#include <GL/gl.h>
- #include <GL/glu.h>
#include <GL/glext.h>
#endif
diff --git a/include/mbgl/util/image.hpp b/include/mbgl/util/image.hpp
index dc8f6a8150..b2f70e1442 100644
--- a/include/mbgl/util/image.hpp
+++ b/include/mbgl/util/image.hpp
@@ -2,31 +2,29 @@
#define MBGL_UTIL_IMAGE
#include <string>
-#include <cstring>
-#include <stdexcept>
+#include <memory>
namespace mbgl {
namespace util {
-std::string compress_png(int width, int height, void *rgba, bool flip = false);
+std::string compress_png(int width, int height, void *rgba);
class Image {
public:
- Image(const std::string &img, bool flip = false);
- ~Image();
+ Image(const std::string &img);
- inline const char *getData() const { return img; }
+ inline const char *getData() const { return img.get(); }
inline uint32_t getWidth() const { return width; }
inline uint32_t getHeight() const { return height; }
+ inline operator bool() const { return img && width && height; }
private:
// loaded image dimensions
uint32_t width = 0, height = 0;
// the raw image data
- char *img = nullptr;
-
+ std::unique_ptr<char[]> img;
};
diff --git a/include/mbgl/util/token.hpp b/include/mbgl/util/token.hpp
index 0f045f434a..64192a99f9 100644
--- a/include/mbgl/util/token.hpp
+++ b/include/mbgl/util/token.hpp
@@ -22,7 +22,7 @@ std::string replaceTokens(const std::string &source, const Lookup &lookup) {
result.append(pos, brace);
pos = brace;
if (pos != end) {
- for (brace++; brace != end && std::isalnum(*brace); brace++);
+ for (brace++; brace != end && (std::isalnum(*brace) || *brace == '_'); brace++);
if (brace != end && *brace == '}') {
result.append(lookup({ pos + 1, brace }));
pos = brace + 1;
diff --git a/ios/mapbox-gl-cocoa b/ios/mapbox-gl-cocoa
-Subproject f395112c34ecc754812d4325102ee273fa8ced0
+Subproject 63d166d3dd33a460a5158159ea9656ea651aa17
diff --git a/linux/main.cpp b/linux/main.cpp
index 604e471dd1..7b96a349e1 100644
--- a/linux/main.cpp
+++ b/linux/main.cpp
@@ -65,7 +65,7 @@ int main(int argc, char *argv[]) {
}
// Load style
- const std::string style = std::string("file://") + uv::cwd() + std::string("/styles/bright/style.json");
+ const std::string style = std::string("file://") + uv::cwd() + std::string("/styles/styles/bright-v5.json");
map.setStyleURL(style);
int ret = view->run();
diff --git a/linux/mapboxgl-app.gyp b/linux/mapboxgl-app.gyp
index 913a1fac45..c4be409be3 100644
--- a/linux/mapboxgl-app.gyp
+++ b/linux/mapboxgl-app.gyp
@@ -22,20 +22,34 @@
'<@(glfw3_cflags)',
'-I<(boost_root)/include',
],
- 'libraries': [
- '<@(png_ldflags)',
- '<@(sqlite3_ldflags)',
- '<@(glfw3_static_libs)',
- '<@(glfw3_ldflags)',
- '<@(curl_ldflags)',
- '<@(zlib_ldflags)',
+ 'variables': {
+ 'ldflags': [
+ '<@(png_ldflags)',
+ '<@(sqlite3_ldflags)',
+ '<@(glfw3_static_libs)',
+ '<@(glfw3_ldflags)',
+ '<@(curl_ldflags)',
+ '<@(zlib_ldflags)',
+ ],
+ },
+ 'conditions': [
+ ['OS == "mac"', {
+ 'xcode_settings': {
+ 'OTHER_LDFLAGS': [ '<@(ldflags)' ],
+ }
+ }, {
+ 'libraries': [ '<@(ldflags)' ],
+ }]
],
'dependencies': [
'../mapboxgl.gyp:mbgl-standalone',
'../mapboxgl.gyp:mbgl-linux',
- '../mapboxgl.gyp:copy_styles',
'../mapboxgl.gyp:copy_certificate_bundle',
],
+ 'copies': [{
+ 'files': [ '../styles/styles' ],
+ 'destination': '<(PRODUCT_DIR)'
+ }],
},
],
}
diff --git a/macosx/main.mm b/macosx/main.mm
index 81494821cf..5c6f3592a9 100644
--- a/macosx/main.mm
+++ b/macosx/main.mm
@@ -100,7 +100,7 @@ int main() {
if (accessToken) map.setAccessToken([accessToken cStringUsingEncoding:[NSString defaultCStringEncoding]]);
// Load style
- const std::string path([[[NSBundle mainBundle] pathForResource:@"style" ofType:@"json" inDirectory:@"styles/bright"] UTF8String]);
+ const std::string path([[[NSBundle mainBundle] pathForResource:@"bright-v5" ofType:@"json" inDirectory:@"styles/"] UTF8String]);
map.setStyleURL(std::string("file://") + path);
diff --git a/macosx/mapboxgl-app.gyp b/macosx/mapboxgl-app.gyp
index 0e6fe38042..e948d054c2 100644
--- a/macosx/mapboxgl-app.gyp
+++ b/macosx/mapboxgl-app.gyp
@@ -40,8 +40,7 @@
'<@(sqlite3_ldflags)',
'<@(glfw3_static_libs)',
'<@(glfw3_ldflags)',
- '<@(curl_ldflags)',
- '<@(png_ldflags)'
+ '<@(zlib_ldflags)',
]
},
'conditions': [
diff --git a/mapboxgl.gyp b/mapboxgl.gyp
index cca803b338..3978ebf0ad 100644
--- a/mapboxgl.gyp
+++ b/mapboxgl.gyp
@@ -2,9 +2,7 @@
'includes': [
'./gyp/common.gypi',
'./gyp/shaders.gypi',
- './gyp/npm_install.gypi',
'./gyp/styles.gypi',
- './gyp/fixtures.gypi',
'./gyp/certificates.gypi',
'./gyp/mbgl-core.gypi',
'./gyp/mbgl-platform.gypi',
diff --git a/platform/darwin/image.mm b/platform/darwin/image.mm
new file mode 100644
index 0000000000..50c871533d
--- /dev/null
+++ b/platform/darwin/image.mm
@@ -0,0 +1,125 @@
+#include <mbgl/util/image.hpp>
+
+#import <ImageIO/ImageIO.h>
+
+#if TARGET_OS_IPHONE
+#import <MobileCoreServices/MobileCoreServices.h>
+#else
+#import <CoreServices/CoreServices.h>
+#endif
+
+namespace mbgl {
+namespace util {
+
+std::string compress_png(int width, int height, void *rgba) {
+ CGDataProviderRef provider = CGDataProviderCreateWithData(NULL, rgba, width * height * 4, NULL);
+ if (!provider) {
+ return "";
+ }
+
+ CGColorSpaceRef color_space = CGColorSpaceCreateDeviceRGB();
+ if (!color_space) {
+ CGDataProviderRelease(provider);
+ return "";
+ }
+
+ CGImageRef image = CGImageCreate(width, height, 8, 32, 4 * width, color_space,
+ kCGBitmapByteOrderDefault | kCGImageAlphaLast, provider, NULL, false,
+ kCGRenderingIntentDefault);
+ if (!image) {
+ CGColorSpaceRelease(color_space);
+ CGDataProviderRelease(provider);
+ return "";
+ }
+
+ CFMutableDataRef data = CFDataCreateMutable(kCFAllocatorDefault, 0);
+ if (!data) {
+ CGImageRelease(image);
+ CGColorSpaceRelease(color_space);
+ CGDataProviderRelease(provider);
+ return "";
+ }
+
+ CGImageDestinationRef image_destination = CGImageDestinationCreateWithData(data, kUTTypePNG, 1, NULL);
+ if (!image_destination) {
+ CFRelease(data);
+ CGImageRelease(image);
+ CGColorSpaceRelease(color_space);
+ CGDataProviderRelease(provider);
+ return "";
+ }
+
+ CGImageDestinationAddImage(image_destination, image, NULL);
+ CGImageDestinationFinalize(image_destination);
+
+ const std::string result {
+ reinterpret_cast<const char *>(CFDataGetBytePtr(data)),
+ static_cast<size_t>(CFDataGetLength(data))
+ };
+
+ CFRelease(image_destination);
+ CFRelease(data);
+ CGImageRelease(image);
+ CGColorSpaceRelease(color_space);
+ CGDataProviderRelease(provider);
+
+ return result;
+}
+
+Image::Image(const std::string &source_data) {
+ CFDataRef data = CFDataCreateWithBytesNoCopy(kCFAllocatorDefault, reinterpret_cast<const unsigned char *>(source_data.data()), source_data.size(), kCFAllocatorNull);
+ if (!data) {
+ return;
+ }
+
+ CGImageSourceRef image_source = CGImageSourceCreateWithData(data, NULL);
+ if (!image_source) {
+ CFRelease(data);
+ return;
+ }
+
+ CGImageRef image = CGImageSourceCreateImageAtIndex(image_source, 0, NULL);
+ if (!image) {
+ CFRelease(image_source);
+ CFRelease(data);
+ return;
+ }
+
+ CGColorSpaceRef color_space = CGColorSpaceCreateDeviceRGB();
+ if (!color_space) {
+ CGImageRelease(image);
+ CFRelease(image_source);
+ CFRelease(data);
+ return;
+ }
+
+ width = CGImageGetWidth(image);
+ height = CGImageGetHeight(image);
+ CGRect rect = {{ 0, 0 }, { static_cast<CGFloat>(width), static_cast<CGFloat>(height) }};
+
+ img = ::std::unique_ptr<char[]>(new char[width * height * 4]());
+ CGContextRef context = CGBitmapContextCreate(img.get(), width, height, 8, width * 4,
+ color_space, kCGImageAlphaPremultipliedLast);
+ if (!context) {
+ CGColorSpaceRelease(color_space);
+ CGImageRelease(image);
+ CFRelease(image_source);
+ CFRelease(data);
+ width = 0;
+ height = 0;
+ img.release();
+ return;
+ }
+
+ CGContextSetBlendMode(context, kCGBlendModeCopy);
+ CGContextDrawImage(context, rect, image);
+
+ CGContextRelease(context);
+ CGColorSpaceRelease(color_space);
+ CGImageRelease(image);
+ CFRelease(image_source);
+ CFRelease(data);
+}
+
+}
+} \ No newline at end of file
diff --git a/platform/default/headless_view.cpp b/platform/default/headless_view.cpp
index ec5c4aabec..71096beba0 100644
--- a/platform/default/headless_view.cpp
+++ b/platform/default/headless_view.cpp
@@ -181,11 +181,11 @@ void HeadlessView::resize(uint16_t width, uint16_t height, float pixelRatio) {
make_inactive();
}
-const std::unique_ptr<uint32_t[]> HeadlessView::readPixels() {
+std::unique_ptr<uint32_t[]> HeadlessView::readPixels() {
const unsigned int w = width_ * pixelRatio_;
const unsigned int h = height_ * pixelRatio_;
- std::unique_ptr<uint32_t[]> pixels(new uint32_t[w * h]);
+ auto pixels = std::unique_ptr<uint32_t[]>(new uint32_t[w * h]);
make_active();
glReadPixels(0, 0, width_, height_, GL_RGBA, GL_UNSIGNED_BYTE, pixels.get());
diff --git a/src/util/image.cpp b/platform/default/image.cpp
index ffa65bf0ba..68d1786913 100644
--- a/src/util/image.cpp
+++ b/platform/default/image.cpp
@@ -4,9 +4,14 @@
#include <cassert>
#include <cstdlib>
+#include <stdexcept>
+#include <cstring>
-std::string mbgl::util::compress_png(int width, int height, void *rgba, bool flip) {
+namespace mbgl {
+namespace util {
+
+std::string compress_png(int width, int height, void *rgba) {
png_voidp error_ptr = 0;
png_structp png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, error_ptr, NULL, NULL);
if (!png_ptr) {
@@ -43,7 +48,7 @@ std::string mbgl::util::compress_png(int width, int height, void *rgba, bool fli
} pointers(height);
for (int i = 0; i < height; i++) {
- pointers.rows[flip ? height - 1 - i : i] = (png_bytep)((png_bytep)rgba + width * 4 * i);
+ pointers.rows[i] = (png_bytep)((png_bytep)rgba + width * 4 * i);
}
png_set_rows(png_ptr, info_ptr, pointers.rows);
@@ -54,9 +59,6 @@ std::string mbgl::util::compress_png(int width, int height, void *rgba, bool fli
}
-using namespace mbgl::util;
-
-
struct Buffer {
Buffer(const std::string& data_)
: data(data_.data()), length(data_.size()) {}
@@ -72,7 +74,7 @@ void readCallback(png_structp png, png_bytep data, png_size_t length) {
if (reader->pos + length > reader->length) {
png_error(png, "Read Error");
} else {
- memcpy(data, reader->data + reader->pos, length);
+ std::memcpy(data, reader->data + reader->pos, length);
reader->pos += length;
}
}
@@ -85,7 +87,7 @@ void warningHandler(png_structp, png_const_charp error_msg) {
fprintf(stderr, "PNG: %s\n", error_msg);
}
-Image::Image(const std::string &data, bool flip) {
+Image::Image(const std::string &data) {
Buffer buffer(data);
if (buffer.length < 8 || !png_check_sig((const png_bytep)buffer.data, 8)) {
@@ -134,14 +136,16 @@ Image::Image(const std::string &data, bool flip) {
if (png_get_gAMA(png, info, &gamma))
png_set_gamma(png, 2.2, gamma);
+ png_set_alpha_mode(png, PNG_ALPHA_PREMULTIPLIED, 2.2);
+
png_read_update_info(png, info);
png_size_t rowbytes = png_get_rowbytes(png, info);
assert(width * 4 == rowbytes);
- img = static_cast<char*>(::operator new(width * height * 4));
+ img = ::std::unique_ptr<char[]>(new char[width * height * 4]());
- char *surface = img;
+ char *surface = img.get();
assert(surface);
struct ptrs {
@@ -150,7 +154,7 @@ Image::Image(const std::string &data, bool flip) {
png_bytep *rows = nullptr;
} pointers(height);
for (unsigned i = 0; i < height; ++i) {
- pointers.rows[flip ? height - 1 - i : i] = (png_bytep)(surface + (i * rowbytes));
+ pointers.rows[i] = (png_bytep)(surface + (i * rowbytes));
}
// Read image data
@@ -163,14 +167,12 @@ Image::Image(const std::string &data, bool flip) {
fprintf(stderr, "loading PNG failed: %s\n", e.what());
png_destroy_read_struct(&png, &info, nullptr);
if (img) {
- ::operator delete(img);
- img = nullptr;
+ img.reset();
}
width = 0;
height = 0;
}
}
-Image::~Image() {
- ::operator delete(img),img = nullptr;
+}
}
diff --git a/scripts/build-shaders.py b/scripts/build-shaders.py
new file mode 100644
index 0000000000..c1d7f7f28d
--- /dev/null
+++ b/scripts/build-shaders.py
@@ -0,0 +1,104 @@
+#!/usr/bin/env python
+
+import sys, re, os, errno
+
+
+output_dir = sys.argv[1]
+file_names = sys.argv[2:]
+
+
+def mkdir_p(path):
+ try:
+ os.makedirs(path)
+ except OSError as exc: # Python >2.5
+ if exc.errno == errno.EEXIST and os.path.isdir(path):
+ pass
+ else: raise
+
+# Load all shaders
+shaders = {}
+for file_name in file_names:
+ parts = re.search('/(\w+)\.(vertex|fragment)\.glsl$', file_name)
+ if parts:
+ shader_name = parts.group(1)
+ shader_type = parts.group(2)
+ if not shader_name in shaders:
+ shaders[shader_name] = {}
+ with open(file_name, "r") as f:
+ shaders[shader_name][shader_type] = f.read()
+
+
+def write_header():
+ header = """// NOTE: DO NOT CHANGE THIS FILE. IT IS AUTOMATICALLY GENERATED.
+
+#ifndef MBGL_SHADER_SHADERS
+#define MBGL_SHADER_SHADERS
+
+namespace mbgl {
+
+struct shader_source {
+ const char *vertex;
+ const char *fragment;
+};
+
+enum {
+%s
+ SHADER_COUNT
+};
+
+extern const shader_source shaders[SHADER_COUNT];
+
+}
+
+#endif
+""" % '\n'.join([' %s_SHADER,' % name.upper() for name in shaders.keys()])
+ header_path = os.path.join(output_dir, 'include/mbgl/shader/shaders.hpp')
+ mkdir_p(os.path.dirname(header_path))
+ with open(header_path, 'w') as f: f.write(header)
+
+
+def write_source(shader_platform, prefix, suffix):
+ if shader_platform == 'gles2' or shader_platform == 'gles3':
+ # OpenGL ES
+ preamble = 'precision highp float;';
+ else:
+ # Desktop OpenGL
+ preamble = '#version 120';
+
+ shader_lines = [(""" {{
+ R"{name}_vert({preamble}\n{vertex}){name}_vert",
+ R"{name}_frag({preamble}\n{fragment}){name}_frag",
+ }},
+""").format(
+ name = shader,
+ preamble = preamble,
+ vertex = shaders[shader]['vertex'],
+ fragment = shaders[shader]['fragment']
+) for shader in shaders]
+
+ source = """// NOTE: DO NOT CHANGE THIS FILE. IT IS AUTOMATICALLY GENERATED.
+#include <mbgl/platform/gl.hpp>
+{prefix}
+#include <mbgl/shader/shaders.hpp>
+
+namespace mbgl {{
+
+const shader_source shaders[SHADER_COUNT] = {{
+{shaders}
+}};
+
+}}
+{suffix}
+""".format(
+ prefix = prefix,
+ suffix = suffix,
+ shaders = ''.join(shader_lines)
+)
+
+ source_path = os.path.join(output_dir, 'src/shader/shaders_' + shader_platform + '.cpp')
+ mkdir_p(os.path.dirname(source_path))
+ with open(source_path, 'w') as f: f.write(source)
+
+write_header()
+write_source('gl', '#ifndef GL_ES_VERSION_2_0', '#endif')
+write_source('gles2', '#ifdef GL_ES_VERSION_2_0', '#endif')
diff --git a/scripts/compare_images.sh b/scripts/compare_images.sh
new file mode 100755
index 0000000000..f9e1a81edb
--- /dev/null
+++ b/scripts/compare_images.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -e
+set -o pipefail
+
+(cd ./test/suite/ && (./bin/compare_images.py || true))
diff --git a/scripts/local_mason.sh b/scripts/local_mason.sh
new file mode 100755
index 0000000000..2d8687a280
--- /dev/null
+++ b/scripts/local_mason.sh
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+
+git submodule update --init .mason
+PATH=`pwd`/.mason:$PATH
+export MASON_DIR=`pwd`/.mason
diff --git a/scripts/travis_before_install.sh b/scripts/travis_before_install.sh
index f67aa270d6..2af2f7ae0f 100755
--- a/scripts/travis_before_install.sh
+++ b/scripts/travis_before_install.sh
@@ -24,30 +24,16 @@ if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
libboost1.55-dev libcurl4-openssl-dev \
libpng-dev libsqlite3-dev
- mapbox_time "install_mesa_deps" \
- sudo apt-get install -y libpthread-stubs0-dev \
- xserver-xorg-dev x11proto-xinerama-dev libx11-xcb-dev \
- libxcb-glx0-dev libxrender-dev llvm-3.4 mesa-utils && \
- sudo apt-get build-dep -y libgl1-mesa-dri libxcb-glx0-dev
-
- mapbox_time "build_mesa" \
- curl -sfo MesaLib-10.3.1.tar.gz http://ftp.de.debian.org/debian/pool/main/m/mesa/mesa_10.3.1.orig.tar.gz && \
- tar -zxf MesaLib-10.3.1.tar.gz && \
- cd Mesa-10.3.1 && \
- ./autogen.sh --with-gallium-drivers=svga,swrast --disable-dri \
- --enable-xlib-glx --enable-glx-tls --with-llvm-prefix=/usr/lib/llvm-3.4 \
- --without-va && \
- echo $CXXFLAGS
- echo $CFLAGS
- echo $LDFLAGS
- make -j$JOBS && sudo make install && \
- cd ../
-
mapbox_time "install_opengl" \
- sudo apt-get -y install libxi-dev x11proto-randr-dev \
+ sudo apt-get -y install mesa-utils libxi-dev x11proto-randr-dev \
x11proto-xext-dev libxrandr-dev \
x11proto-xf86vidmode-dev libxxf86vm-dev \
- libxcursor-dev libxinerama-dev
+ libxcursor-dev libxinerama-dev \
+ llvm-3.4 # required for mesa
+
+
+ mapbox_time "install_mesa" \
+ mason install mesa 10.3.1
mapbox_time "install_awscli" \
sudo pip install awscli
diff --git a/scripts/travis_install_test_suite.sh b/scripts/travis_install_test_suite.sh
deleted file mode 100755
index cb2422d70c..0000000000
--- a/scripts/travis_install_test_suite.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-
-if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
- #
- # we'll need the test suite on Linux
- #
- mapbox_time "install_test_suite" \
- npm install git+https://github.com/mapbox/mapbox-gl-test-suite.git
-fi
diff --git a/scripts/travis_script.sh b/scripts/travis_script.sh
index 5fa5a3f5f3..ea6097dc55 100755
--- a/scripts/travis_script.sh
+++ b/scripts/travis_script.sh
@@ -3,6 +3,9 @@
set -e
set -o pipefail
+mapbox_time "checkout_styles" \
+git submodule update --init styles
+
if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
#
# build & test Linux
@@ -13,16 +16,18 @@ if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
mapbox_time "compile_tests" \
make test -j$JOBS BUILDTYPE=${BUILDTYPE}
+ mapbox_time "checkout_test_suite" \
+ git submodule update --init test/suite
+
mapbox_time "run_tests" \
./scripts/run_tests.sh
- mapbox_time_start "compare_results"
- (cd ./node_modules/mapbox-gl-test-suite/ && (./bin/compare_images.js || true))
- mapbox_time_finish
+ mapbox_time "compare_results" \
+ ./scripts/compare_images.sh
if [ ! -z "${AWS_ACCESS_KEY_ID}" ] && [ ! -z "${AWS_SECRET_ACCESS_KEY}" ] ; then
mapbox_time_start "deploy_results"
- (cd ./node_modules/mapbox-gl-test-suite/ && ./bin/deploy_results.sh)
+ (cd ./test/suite/ && ./bin/deploy_results.sh)
mapbox_time_finish
fi
@@ -39,10 +44,8 @@ elif [[ ${TRAVIS_OS_NAME} == "osx" ]]; then
#
# build iOS
#
- git submodule init
-
- mapbox_time "load_submodules" \
- git submodule update
+ mapbox_time "checkout_cocoa_bindings" \
+ git submodule update --init ios/mapbox-gl-cocoa
mapbox_time "create_ios_project" \
make build/ios/mapbox-gl-cocoa/app/mapboxgl-app.xcodeproj
diff --git a/src/geometry/sprite_atlas.cpp b/src/geometry/sprite_atlas.cpp
index 5271122919..d7ef1e789b 100644
--- a/src/geometry/sprite_atlas.cpp
+++ b/src/geometry/sprite_atlas.cpp
@@ -72,18 +72,7 @@ void copy_bitmap(const uint32_t *src, const int src_stride, const int src_x, con
dst += dst_y * dst_stride + dst_x;
for (int y = 0; y < height; y++, src += src_stride, dst += dst_stride) {
for (int x = 0; x < width; x++) {
- const uint8_t *s = reinterpret_cast<const uint8_t *>(src + x);
- uint8_t *d = reinterpret_cast<uint8_t *>(dst + x);
-
- // Premultiply the bitmap.
- // Note: We don't need to clamp the component values to 0..255, since
- // the source value is already 0..255 and the operation means they will
- // stay within the range of 0..255 and won't overflow.
- const uint8_t a = s[3];
- d[0] = s[0] * a / 255;
- d[1] = s[1] * a / 255;
- d[2] = s[2] * a / 255;
- d[3] = a;
+ dst[x] = src[x];
}
}
}
@@ -158,6 +147,7 @@ void SpriteAtlas::allocate() {
void SpriteAtlas::copy(const Rect<dimension>& dst, const SpritePosition& src) {
if (!sprite->raster) return;
const uint32_t *src_img = reinterpret_cast<const uint32_t *>(sprite->raster->getData());
+ if (!src_img) return;
allocate();
uint32_t *dst_img = reinterpret_cast<uint32_t *>(data);
diff --git a/src/map/sprite.cpp b/src/map/sprite.cpp
index 876586e4b0..ad1a8e770b 100644
--- a/src/map/sprite.cpp
+++ b/src/map/sprite.cpp
@@ -102,6 +102,9 @@ bool Sprite::isLoaded() const {
void Sprite::parseImage() {
raster = std::make_unique<util::Image>(image);
+ if (!*raster) {
+ raster.reset();
+ }
image.clear();
loadedImage = true;
}
diff --git a/styles b/styles
new file mode 160000
+Subproject 65dc5c9b7e926a7f43c2834979bd4c7395e8dca
diff --git a/styles/bright/img/sprite.json b/styles/bright/img/sprite.json
deleted file mode 100644
index d8fd539f42..0000000000
--- a/styles/bright/img/sprite.json
+++ /dev/null
@@ -1,2818 +0,0 @@
-{
- "marker-24": {
- "x": 0,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "zoo-24": {
- "x": 26,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "-24": {
- "x": 0,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "wetland-24": {
- "x": 26,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "water-24": {
- "x": 52,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "airfield-24": {
- "x": 52,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "waste-basket-24": {
- "x": 0,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "warehouse-24": {
- "x": 26,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "airport-24": {
- "x": 52,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "village-24": {
- "x": 78,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "triangle-stroked-24": {
- "x": 78,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "alcohol-shop-24": {
- "x": 78,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "triangle-24": {
- "x": 0,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "town-hall-24": {
- "x": 26,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "america-football-24": {
- "x": 52,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "town-24": {
- "x": 78,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "toilets-24": {
- "x": 104,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "art-gallery-24": {
- "x": 104,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "theatre-24": {
- "x": 104,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "tennis-24": {
- "x": 104,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "bakery-24": {
- "x": 0,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "telephone-24": {
- "x": 26,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "swimming-24": {
- "x": 52,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "bank-24": {
- "x": 78,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "suitcase-24": {
- "x": 104,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "star-stroked-24": {
- "x": 130,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "bar-24": {
- "x": 130,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "star-24": {
- "x": 130,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "square-stroked-24": {
- "x": 130,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "baseball-24": {
- "x": 130,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "square-24": {
- "x": 0,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "soccer-24": {
- "x": 26,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "basketball-24": {
- "x": 52,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "slaughterhouse-24": {
- "x": 78,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "skiing-24": {
- "x": 104,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "beer-24": {
- "x": 130,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "shop-24": {
- "x": 156,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "scooter-24": {
- "x": 156,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "bicycle-24": {
- "x": 156,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "school-24": {
- "x": 156,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "rocket-24": {
- "x": 156,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "building-24": {
- "x": 156,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "roadblock-24": {
- "x": 0,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "restaurant-24": {
- "x": 26,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "bus-24": {
- "x": 52,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "religious-muslim-24": {
- "x": 78,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "religious-jewish-24": {
- "x": 104,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "cafe-24": {
- "x": 130,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "religious-christian-24": {
- "x": 156,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-underground-24": {
- "x": 182,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "camera-24": {
- "x": 182,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-metro-24": {
- "x": 182,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-light-24": {
- "x": 182,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "campsite-24": {
- "x": 182,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-above-24": {
- "x": 182,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-24": {
- "x": 182,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "car-24": {
- "x": 0,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "prison-24": {
- "x": 26,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "post-24": {
- "x": 52,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "cemetery-24": {
- "x": 78,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "polling-place-24": {
- "x": 104,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "police-24": {
- "x": 130,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "chemist-24": {
- "x": 156,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "playground-24": {
- "x": 182,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "place-of-worship-24": {
- "x": 208,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "cinema-24": {
- "x": 208,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "pitch-24": {
- "x": 208,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "pharmacy-24": {
- "x": 208,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "circle-24": {
- "x": 208,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "parking-garage-24": {
- "x": 208,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "parking-24": {
- "x": 208,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "circle-stroked-24": {
- "x": 208,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "park2-24": {
- "x": 0,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "park-24": {
- "x": 26,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "city-24": {
- "x": 52,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "oil-well-24": {
- "x": 78,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "music-24": {
- "x": 104,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "clothing-store-24": {
- "x": 130,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "museum-24": {
- "x": 156,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "monument-24": {
- "x": 182,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "college-24": {
- "x": 208,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "mobilephone-24": {
- "x": 234,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "minefield-24": {
- "x": 234,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "commercial-24": {
- "x": 234,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "marker-stroked-24": {
- "x": 234,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "london-underground-24": {
- "x": 234,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "cricket-24": {
- "x": 234,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "logging-24": {
- "x": 234,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "lodging-24": {
- "x": 234,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "cross-24": {
- "x": 234,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "lighthouse-24": {
- "x": 0,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "library-24": {
- "x": 26,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "dam-24": {
- "x": 52,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "laundry-24": {
- "x": 78,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "land-use-24": {
- "x": 104,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "danger-24": {
- "x": 130,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "industrial-24": {
- "x": 156,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "hospital-24": {
- "x": 182,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "disability-24": {
- "x": 208,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "heliport-24": {
- "x": 234,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "heart-24": {
- "x": 260,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "dog-park-24": {
- "x": 260,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "harbor-24": {
- "x": 260,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "hairdresser-24": {
- "x": 260,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "embassy-24": {
- "x": 260,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "grocery-24": {
- "x": 260,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "golf-24": {
- "x": 260,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "emergency-telephone-24": {
- "x": 260,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "garden-24": {
- "x": 260,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "fuel-24": {
- "x": 260,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "entrance-24": {
- "x": 0,
- "y": 260,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "fire-station-24": {
- "x": 26,
- "y": 260,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "ferry-24": {
- "x": 52,
- "y": 260,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "farm-24": {
- "x": 78,
- "y": 260,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "fast-food-24": {
- "x": 104,
- "y": 260,
- "width": 24,
- "height": 24,
- "pixelRatio": 1,
- "sdf": false
- },
- "police-18": {
- "x": 130,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "fast-food-18": {
- "x": 150,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "farm-18": {
- "x": 170,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "fire-station-18": {
- "x": 190,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "fuel-18": {
- "x": 210,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "entrance-18": {
- "x": 230,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "garden-18": {
- "x": 250,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "golf-18": {
- "x": 286,
- "y": 0,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "emergency-telephone-18": {
- "x": 286,
- "y": 20,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "grocery-18": {
- "x": 286,
- "y": 40,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "hairdresser-18": {
- "x": 286,
- "y": 60,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "embassy-18": {
- "x": 286,
- "y": 80,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "harbor-18": {
- "x": 286,
- "y": 100,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "heart-18": {
- "x": 286,
- "y": 120,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "dog-park-18": {
- "x": 286,
- "y": 140,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "heliport-18": {
- "x": 286,
- "y": 160,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "hospital-18": {
- "x": 286,
- "y": 180,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "disability-18": {
- "x": 286,
- "y": 200,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "industrial-18": {
- "x": 286,
- "y": 220,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "land-use-18": {
- "x": 286,
- "y": 240,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "danger-18": {
- "x": 286,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "laundry-18": {
- "x": 0,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "library-18": {
- "x": 20,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "dam-18": {
- "x": 40,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "lighthouse-18": {
- "x": 60,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "lodging-18": {
- "x": 80,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "cross-18": {
- "x": 100,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "logging-18": {
- "x": 120,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "london-underground-18": {
- "x": 140,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "cricket-18": {
- "x": 160,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "marker-18": {
- "x": 180,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "-18": {
- "x": 200,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "marker-stroked-18": {
- "x": 220,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "minefield-18": {
- "x": 240,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "commercial-18": {
- "x": 260,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "mobilephone-18": {
- "x": 280,
- "y": 286,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "monument-18": {
- "x": 306,
- "y": 0,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "college-18": {
- "x": 306,
- "y": 20,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "motorway_1": {
- "x": 0,
- "y": 306,
- "width": 19,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "motorway_2": {
- "x": 21,
- "y": 306,
- "width": 24,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "motorway_3": {
- "x": 47,
- "y": 306,
- "width": 29,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "motorway_4": {
- "x": 78,
- "y": 306,
- "width": 34,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "motorway_5": {
- "x": 114,
- "y": 306,
- "width": 39,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "motorway_6": {
- "x": 155,
- "y": 306,
- "width": 44,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "museum-18": {
- "x": 306,
- "y": 40,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "music-18": {
- "x": 306,
- "y": 60,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "clothing-store-18": {
- "x": 306,
- "y": 80,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "oil-well-18": {
- "x": 306,
- "y": 100,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "park-18": {
- "x": 306,
- "y": 120,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "city-18": {
- "x": 306,
- "y": 140,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "park2-18": {
- "x": 306,
- "y": 160,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "parking-18": {
- "x": 306,
- "y": 180,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "circle-stroked-18": {
- "x": 306,
- "y": 200,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "parking-garage-18": {
- "x": 306,
- "y": 220,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "pharmacy-18": {
- "x": 306,
- "y": 240,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "circle-18": {
- "x": 306,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "pitch-18": {
- "x": 306,
- "y": 280,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "place-of-worship-18": {
- "x": 201,
- "y": 306,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "cinema-18": {
- "x": 221,
- "y": 306,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "playground-18": {
- "x": 241,
- "y": 306,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "ferry-18": {
- "x": 261,
- "y": 306,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "chemist-18": {
- "x": 281,
- "y": 306,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "polling-place-18": {
- "x": 301,
- "y": 306,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "post-18": {
- "x": 326,
- "y": 0,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "cemetery-18": {
- "x": 326,
- "y": 20,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "prison-18": {
- "x": 326,
- "y": 40,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-18": {
- "x": 326,
- "y": 60,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "car-18": {
- "x": 326,
- "y": 80,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-above-18": {
- "x": 326,
- "y": 100,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-light-18": {
- "x": 326,
- "y": 120,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "campsite-18": {
- "x": 326,
- "y": 140,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-metro-18": {
- "x": 326,
- "y": 160,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-underground-18": {
- "x": 326,
- "y": 180,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "camera-18": {
- "x": 326,
- "y": 200,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "religious-christian-18": {
- "x": 326,
- "y": 220,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "religious-jewish-18": {
- "x": 326,
- "y": 240,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "cafe-18": {
- "x": 326,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "religious-muslim-18": {
- "x": 326,
- "y": 280,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "restaurant-18": {
- "x": 326,
- "y": 300,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "bus-18": {
- "x": 0,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "roadblock-18": {
- "x": 20,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "rocket-18": {
- "x": 40,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "building-18": {
- "x": 60,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "school-18": {
- "x": 80,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "scooter-18": {
- "x": 100,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "bicycle-18": {
- "x": 120,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "shop-18": {
- "x": 140,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "skiing-18": {
- "x": 160,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "beer-18": {
- "x": 180,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "slaughterhouse-18": {
- "x": 200,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "soccer-18": {
- "x": 220,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "basketball-18": {
- "x": 240,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "square-18": {
- "x": 260,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "square-stroked-18": {
- "x": 280,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "baseball-18": {
- "x": 300,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "star-18": {
- "x": 320,
- "y": 326,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "star-stroked-18": {
- "x": 346,
- "y": 0,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "bar-18": {
- "x": 346,
- "y": 20,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "suitcase-18": {
- "x": 346,
- "y": 40,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "swimming-18": {
- "x": 346,
- "y": 60,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "bank-18": {
- "x": 346,
- "y": 80,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "telephone-18": {
- "x": 346,
- "y": 100,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "tennis-18": {
- "x": 346,
- "y": 120,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "bakery-18": {
- "x": 346,
- "y": 140,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "theatre-18": {
- "x": 346,
- "y": 160,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "toilets-18": {
- "x": 346,
- "y": 180,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "art-gallery-18": {
- "x": 346,
- "y": 200,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "town-18": {
- "x": 346,
- "y": 220,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "town-hall-18": {
- "x": 346,
- "y": 240,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "america-football-18": {
- "x": 346,
- "y": 260,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "triangle-18": {
- "x": 346,
- "y": 280,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "triangle-stroked-18": {
- "x": 346,
- "y": 300,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "alcohol-shop-18": {
- "x": 346,
- "y": 320,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "village-18": {
- "x": 0,
- "y": 346,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "warehouse-18": {
- "x": 20,
- "y": 346,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "airport-18": {
- "x": 40,
- "y": 346,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "waste-basket-18": {
- "x": 60,
- "y": 346,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "water-18": {
- "x": 80,
- "y": 346,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "airfield-18": {
- "x": 100,
- "y": 346,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "zoo-18": {
- "x": 120,
- "y": 346,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "wetland-18": {
- "x": 140,
- "y": 346,
- "width": 18,
- "height": 18,
- "pixelRatio": 1,
- "sdf": false
- },
- "cricket-12": {
- "x": 270,
- "y": 260,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "prison-12": {
- "x": 160,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "minefield-12": {
- "x": 174,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "cemetery-12": {
- "x": 188,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-12": {
- "x": 202,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "fuel-12": {
- "x": 216,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "grocery-12": {
- "x": 230,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-above-12": {
- "x": 244,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "mobilephone-12": {
- "x": 258,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "car-12": {
- "x": 272,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-light-12": {
- "x": 286,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "industrial-12": {
- "x": 300,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "commercial-12": {
- "x": 314,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-metro-12": {
- "x": 328,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "monument-12": {
- "x": 342,
- "y": 346,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "campsite-12": {
- "x": 366,
- "y": 0,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "rail-underground-12": {
- "x": 366,
- "y": 14,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "ferry-12": {
- "x": 366,
- "y": 28,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "disability-12": {
- "x": 366,
- "y": 42,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "religious-christian-12": {
- "x": 366,
- "y": 56,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "land-use-12": {
- "x": 366,
- "y": 70,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "camera-12": {
- "x": 366,
- "y": 84,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "religious-jewish-12": {
- "x": 366,
- "y": 98,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "emergency-telephone-12": {
- "x": 366,
- "y": 112,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "hairdresser-12": {
- "x": 366,
- "y": 126,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "religious-muslim-12": {
- "x": 366,
- "y": 140,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "laundry-12": {
- "x": 366,
- "y": 154,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "cafe-12": {
- "x": 366,
- "y": 168,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "restaurant-12": {
- "x": 366,
- "y": 182,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "fire-station-12": {
- "x": 366,
- "y": 196,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "danger-12": {
- "x": 366,
- "y": 210,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "roadblock-12": {
- "x": 366,
- "y": 224,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "museum-12": {
- "x": 366,
- "y": 238,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "bus-12": {
- "x": 366,
- "y": 252,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "rocket-12": {
- "x": 366,
- "y": 266,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "library-12": {
- "x": 366,
- "y": 280,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "college-12": {
- "x": 366,
- "y": 294,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "school-12": {
- "x": 366,
- "y": 308,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "music-12": {
- "x": 366,
- "y": 322,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "building-12": {
- "x": 366,
- "y": 336,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "scooter-12": {
- "x": 366,
- "y": 350,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "garden-12": {
- "x": 0,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "harbor-12": {
- "x": 14,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "shop-12": {
- "x": 28,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "oil-well-12": {
- "x": 42,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "bicycle-12": {
- "x": 56,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "skiing-12": {
- "x": 70,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "lighthouse-12": {
- "x": 84,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "clothing-store-12": {
- "x": 98,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "slaughterhouse-12": {
- "x": 112,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "park-12": {
- "x": 126,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "beer-12": {
- "x": 140,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "soccer-12": {
- "x": 154,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "-12": {
- "x": 168,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "dam-12": {
- "x": 182,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "square-12": {
- "x": 196,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "park2-12": {
- "x": 210,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "basketball-12": {
- "x": 224,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "square-stroked-12": {
- "x": 238,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "lodging-12": {
- "x": 252,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "city-12": {
- "x": 266,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "star-12": {
- "x": 280,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "parking-12": {
- "x": 294,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "baseball-12": {
- "x": 308,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "star-stroked-12": {
- "x": 322,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "embassy-12": {
- "x": 336,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "heart-12": {
- "x": 350,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "suitcase-12": {
- "x": 364,
- "y": 366,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "parking-garage-12": {
- "x": 380,
- "y": 0,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "bar-12": {
- "x": 380,
- "y": 14,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "swimming-12": {
- "x": 380,
- "y": 28,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "logging-12": {
- "x": 380,
- "y": 42,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "circle-stroked-12": {
- "x": 380,
- "y": 56,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "telephone-12": {
- "x": 380,
- "y": 70,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "pharmacy-12": {
- "x": 380,
- "y": 84,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "bank-12": {
- "x": 380,
- "y": 98,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "tennis-12": {
- "x": 380,
- "y": 112,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "entrance-12": {
- "x": 380,
- "y": 126,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "cross-12": {
- "x": 380,
- "y": 140,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "theatre-12": {
- "x": 380,
- "y": 154,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "pitch-12": {
- "x": 380,
- "y": 168,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "bakery-12": {
- "x": 380,
- "y": 182,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "toilets-12": {
- "x": 380,
- "y": 196,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "london-underground-12": {
- "x": 380,
- "y": 210,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "circle-12": {
- "x": 380,
- "y": 224,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "town-12": {
- "x": 380,
- "y": 238,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "place-of-worship-12": {
- "x": 380,
- "y": 252,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "art-gallery-12": {
- "x": 380,
- "y": 266,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "town-hall-12": {
- "x": 380,
- "y": 280,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "golf-12": {
- "x": 380,
- "y": 294,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "heliport-12": {
- "x": 380,
- "y": 308,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "triangle-12": {
- "x": 380,
- "y": 322,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "playground-12": {
- "x": 380,
- "y": 336,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "america-football-12": {
- "x": 380,
- "y": 350,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "triangle-stroked-12": {
- "x": 380,
- "y": 364,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "marker-12": {
- "x": 0,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "cinema-12": {
- "x": 14,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "village-12": {
- "x": 28,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "police-12": {
- "x": 42,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "alcohol-shop-12": {
- "x": 56,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "warehouse-12": {
- "x": 70,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "farm-12": {
- "x": 84,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "dog-park-12": {
- "x": 98,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "waste-basket-12": {
- "x": 112,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "polling-place-12": {
- "x": 126,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "airport-12": {
- "x": 140,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "water-12": {
- "x": 154,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "marker-stroked-12": {
- "x": 168,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "fast-food-12": {
- "x": 182,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "post-12": {
- "x": 196,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "wetland-12": {
- "x": 210,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "hospital-12": {
- "x": 224,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "airfield-12": {
- "x": 238,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "zoo-12": {
- "x": 252,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "chemist-12": {
- "x": 266,
- "y": 380,
- "width": 12,
- "height": 12,
- "pixelRatio": 1,
- "sdf": false
- },
- "wave": {
- "x": 280,
- "y": 380,
- "width": 16,
- "height": 8,
- "pixelRatio": 1,
- "sdf": false
- }
-} \ No newline at end of file
diff --git a/styles/bright/img/sprite.png b/styles/bright/img/sprite.png
deleted file mode 100644
index 34ef6124b8..0000000000
--- a/styles/bright/img/sprite.png
+++ /dev/null
Binary files differ
diff --git a/styles/bright/img/sprite@2x.json b/styles/bright/img/sprite@2x.json
deleted file mode 100644
index b15134a6a8..0000000000
--- a/styles/bright/img/sprite@2x.json
+++ /dev/null
@@ -1,2818 +0,0 @@
-{
- "marker-24": {
- "x": 0,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "zoo-24": {
- "x": 50,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "-24": {
- "x": 0,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "wetland-24": {
- "x": 50,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "water-24": {
- "x": 100,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "airfield-24": {
- "x": 100,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "waste-basket-24": {
- "x": 0,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "warehouse-24": {
- "x": 50,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "airport-24": {
- "x": 100,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "village-24": {
- "x": 150,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "triangle-stroked-24": {
- "x": 150,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "alcohol-shop-24": {
- "x": 150,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "triangle-24": {
- "x": 0,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "town-hall-24": {
- "x": 50,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "america-football-24": {
- "x": 100,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "town-24": {
- "x": 150,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "toilets-24": {
- "x": 200,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "art-gallery-24": {
- "x": 200,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "theatre-24": {
- "x": 200,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "tennis-24": {
- "x": 200,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "bakery-24": {
- "x": 0,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "telephone-24": {
- "x": 50,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "swimming-24": {
- "x": 100,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "bank-24": {
- "x": 150,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "suitcase-24": {
- "x": 200,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "star-stroked-24": {
- "x": 250,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "bar-24": {
- "x": 250,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "star-24": {
- "x": 250,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "square-stroked-24": {
- "x": 250,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "baseball-24": {
- "x": 250,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "square-24": {
- "x": 0,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "soccer-24": {
- "x": 50,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "basketball-24": {
- "x": 100,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "slaughterhouse-24": {
- "x": 150,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "skiing-24": {
- "x": 200,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "beer-24": {
- "x": 250,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "shop-24": {
- "x": 300,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "scooter-24": {
- "x": 300,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "bicycle-24": {
- "x": 300,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "school-24": {
- "x": 300,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "rocket-24": {
- "x": 300,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "building-24": {
- "x": 300,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "roadblock-24": {
- "x": 0,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "restaurant-24": {
- "x": 50,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "bus-24": {
- "x": 100,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "religious-muslim-24": {
- "x": 150,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "religious-jewish-24": {
- "x": 200,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "cafe-24": {
- "x": 250,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "religious-christian-24": {
- "x": 300,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-underground-24": {
- "x": 350,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "camera-24": {
- "x": 350,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-metro-24": {
- "x": 350,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-light-24": {
- "x": 350,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "campsite-24": {
- "x": 350,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-above-24": {
- "x": 350,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-24": {
- "x": 350,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "car-24": {
- "x": 0,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "prison-24": {
- "x": 50,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "post-24": {
- "x": 100,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "cemetery-24": {
- "x": 150,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "polling-place-24": {
- "x": 200,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "police-24": {
- "x": 250,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "chemist-24": {
- "x": 300,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "playground-24": {
- "x": 350,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "place-of-worship-24": {
- "x": 400,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "cinema-24": {
- "x": 400,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "pitch-24": {
- "x": 400,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "pharmacy-24": {
- "x": 400,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "circle-24": {
- "x": 400,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "parking-garage-24": {
- "x": 400,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "parking-24": {
- "x": 400,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "circle-stroked-24": {
- "x": 400,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "park2-24": {
- "x": 0,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "park-24": {
- "x": 50,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "city-24": {
- "x": 100,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "oil-well-24": {
- "x": 150,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "music-24": {
- "x": 200,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "clothing-store-24": {
- "x": 250,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "museum-24": {
- "x": 300,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "monument-24": {
- "x": 350,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "college-24": {
- "x": 400,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "mobilephone-24": {
- "x": 450,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "minefield-24": {
- "x": 450,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "commercial-24": {
- "x": 450,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "marker-stroked-24": {
- "x": 450,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "london-underground-24": {
- "x": 450,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "cricket-24": {
- "x": 450,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "logging-24": {
- "x": 450,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "lodging-24": {
- "x": 450,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "cross-24": {
- "x": 450,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "lighthouse-24": {
- "x": 0,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "library-24": {
- "x": 50,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "dam-24": {
- "x": 100,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "laundry-24": {
- "x": 150,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "land-use-24": {
- "x": 200,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "danger-24": {
- "x": 250,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "industrial-24": {
- "x": 300,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "hospital-24": {
- "x": 350,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "disability-24": {
- "x": 400,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "heliport-24": {
- "x": 450,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "heart-24": {
- "x": 500,
- "y": 0,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "dog-park-24": {
- "x": 500,
- "y": 50,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "harbor-24": {
- "x": 500,
- "y": 100,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "hairdresser-24": {
- "x": 500,
- "y": 150,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "embassy-24": {
- "x": 500,
- "y": 200,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "grocery-24": {
- "x": 500,
- "y": 250,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "golf-24": {
- "x": 500,
- "y": 300,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "emergency-telephone-24": {
- "x": 500,
- "y": 350,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "garden-24": {
- "x": 500,
- "y": 400,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "fuel-24": {
- "x": 500,
- "y": 450,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "entrance-24": {
- "x": 0,
- "y": 500,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "fire-station-24": {
- "x": 50,
- "y": 500,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "ferry-24": {
- "x": 100,
- "y": 500,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "farm-24": {
- "x": 150,
- "y": 500,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "fast-food-24": {
- "x": 200,
- "y": 500,
- "width": 48,
- "height": 48,
- "pixelRatio": 2,
- "sdf": false
- },
- "police-18": {
- "x": 250,
- "y": 500,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "fast-food-18": {
- "x": 288,
- "y": 500,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "farm-18": {
- "x": 326,
- "y": 500,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "fire-station-18": {
- "x": 364,
- "y": 500,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "fuel-18": {
- "x": 402,
- "y": 500,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "entrance-18": {
- "x": 440,
- "y": 500,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "garden-18": {
- "x": 478,
- "y": 500,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "golf-18": {
- "x": 550,
- "y": 0,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "emergency-telephone-18": {
- "x": 550,
- "y": 38,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "grocery-18": {
- "x": 550,
- "y": 76,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "hairdresser-18": {
- "x": 550,
- "y": 114,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "embassy-18": {
- "x": 550,
- "y": 152,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "harbor-18": {
- "x": 550,
- "y": 190,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "heart-18": {
- "x": 550,
- "y": 228,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "dog-park-18": {
- "x": 550,
- "y": 266,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "heliport-18": {
- "x": 550,
- "y": 304,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "hospital-18": {
- "x": 550,
- "y": 342,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "disability-18": {
- "x": 550,
- "y": 380,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "industrial-18": {
- "x": 550,
- "y": 418,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "land-use-18": {
- "x": 550,
- "y": 456,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "danger-18": {
- "x": 550,
- "y": 494,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "laundry-18": {
- "x": 0,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "library-18": {
- "x": 38,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "dam-18": {
- "x": 76,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "lighthouse-18": {
- "x": 114,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "lodging-18": {
- "x": 152,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "cross-18": {
- "x": 190,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "logging-18": {
- "x": 228,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "london-underground-18": {
- "x": 266,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "cricket-18": {
- "x": 304,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "marker-18": {
- "x": 342,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "-18": {
- "x": 380,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "marker-stroked-18": {
- "x": 418,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "minefield-18": {
- "x": 456,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "commercial-18": {
- "x": 494,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "mobilephone-18": {
- "x": 532,
- "y": 550,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "monument-18": {
- "x": 588,
- "y": 0,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "college-18": {
- "x": 588,
- "y": 38,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "motorway_1": {
- "x": 0,
- "y": 588,
- "width": 38,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "motorway_2": {
- "x": 40,
- "y": 588,
- "width": 48,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "motorway_3": {
- "x": 90,
- "y": 588,
- "width": 58,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "motorway_4": {
- "x": 150,
- "y": 588,
- "width": 68,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "motorway_5": {
- "x": 220,
- "y": 588,
- "width": 78,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "motorway_6": {
- "x": 300,
- "y": 588,
- "width": 88,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "museum-18": {
- "x": 588,
- "y": 76,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "music-18": {
- "x": 588,
- "y": 114,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "clothing-store-18": {
- "x": 588,
- "y": 152,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "oil-well-18": {
- "x": 588,
- "y": 190,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "park-18": {
- "x": 588,
- "y": 228,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "city-18": {
- "x": 588,
- "y": 266,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "park2-18": {
- "x": 588,
- "y": 304,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "parking-18": {
- "x": 588,
- "y": 342,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "circle-stroked-18": {
- "x": 588,
- "y": 380,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "parking-garage-18": {
- "x": 588,
- "y": 418,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "pharmacy-18": {
- "x": 588,
- "y": 456,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "circle-18": {
- "x": 588,
- "y": 494,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "pitch-18": {
- "x": 588,
- "y": 532,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "place-of-worship-18": {
- "x": 390,
- "y": 588,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "cinema-18": {
- "x": 428,
- "y": 588,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "playground-18": {
- "x": 466,
- "y": 588,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "ferry-18": {
- "x": 504,
- "y": 588,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "chemist-18": {
- "x": 542,
- "y": 588,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "polling-place-18": {
- "x": 580,
- "y": 588,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "post-18": {
- "x": 626,
- "y": 0,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "cemetery-18": {
- "x": 626,
- "y": 38,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "prison-18": {
- "x": 626,
- "y": 76,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-18": {
- "x": 626,
- "y": 114,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "car-18": {
- "x": 626,
- "y": 152,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-above-18": {
- "x": 626,
- "y": 190,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-light-18": {
- "x": 626,
- "y": 228,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "campsite-18": {
- "x": 626,
- "y": 266,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-metro-18": {
- "x": 626,
- "y": 304,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-underground-18": {
- "x": 626,
- "y": 342,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "camera-18": {
- "x": 626,
- "y": 380,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "religious-christian-18": {
- "x": 626,
- "y": 418,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "religious-jewish-18": {
- "x": 626,
- "y": 456,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "cafe-18": {
- "x": 626,
- "y": 494,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "religious-muslim-18": {
- "x": 626,
- "y": 532,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "restaurant-18": {
- "x": 626,
- "y": 570,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "bus-18": {
- "x": 0,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "roadblock-18": {
- "x": 38,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "rocket-18": {
- "x": 76,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "building-18": {
- "x": 114,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "school-18": {
- "x": 152,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "scooter-18": {
- "x": 190,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "bicycle-18": {
- "x": 228,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "shop-18": {
- "x": 266,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "skiing-18": {
- "x": 304,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "beer-18": {
- "x": 342,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "slaughterhouse-18": {
- "x": 380,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "soccer-18": {
- "x": 418,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "basketball-18": {
- "x": 456,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "square-18": {
- "x": 494,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "square-stroked-18": {
- "x": 532,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "baseball-18": {
- "x": 570,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "star-18": {
- "x": 608,
- "y": 626,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "star-stroked-18": {
- "x": 664,
- "y": 0,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "bar-18": {
- "x": 664,
- "y": 38,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "suitcase-18": {
- "x": 664,
- "y": 76,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "swimming-18": {
- "x": 664,
- "y": 114,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "bank-18": {
- "x": 664,
- "y": 152,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "telephone-18": {
- "x": 664,
- "y": 190,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "tennis-18": {
- "x": 664,
- "y": 228,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "bakery-18": {
- "x": 664,
- "y": 266,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "theatre-18": {
- "x": 664,
- "y": 304,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "toilets-18": {
- "x": 664,
- "y": 342,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "art-gallery-18": {
- "x": 664,
- "y": 380,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "town-18": {
- "x": 664,
- "y": 418,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "town-hall-18": {
- "x": 664,
- "y": 456,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "america-football-18": {
- "x": 664,
- "y": 494,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "triangle-18": {
- "x": 664,
- "y": 532,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "triangle-stroked-18": {
- "x": 664,
- "y": 570,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "alcohol-shop-18": {
- "x": 664,
- "y": 608,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "village-18": {
- "x": 0,
- "y": 664,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "warehouse-18": {
- "x": 38,
- "y": 664,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "airport-18": {
- "x": 76,
- "y": 664,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "waste-basket-18": {
- "x": 114,
- "y": 664,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "water-18": {
- "x": 152,
- "y": 664,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "airfield-18": {
- "x": 190,
- "y": 664,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "zoo-18": {
- "x": 228,
- "y": 664,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "wetland-18": {
- "x": 266,
- "y": 664,
- "width": 36,
- "height": 36,
- "pixelRatio": 2,
- "sdf": false
- },
- "cricket-12": {
- "x": 516,
- "y": 500,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "prison-12": {
- "x": 304,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "minefield-12": {
- "x": 330,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "cemetery-12": {
- "x": 356,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-12": {
- "x": 382,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "fuel-12": {
- "x": 408,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "grocery-12": {
- "x": 434,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-above-12": {
- "x": 460,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "mobilephone-12": {
- "x": 486,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "car-12": {
- "x": 512,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-light-12": {
- "x": 538,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "industrial-12": {
- "x": 564,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "commercial-12": {
- "x": 590,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-metro-12": {
- "x": 616,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "monument-12": {
- "x": 642,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "campsite-12": {
- "x": 668,
- "y": 664,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "rail-underground-12": {
- "x": 702,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "ferry-12": {
- "x": 702,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "disability-12": {
- "x": 702,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "religious-christian-12": {
- "x": 702,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "land-use-12": {
- "x": 702,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "camera-12": {
- "x": 702,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "religious-jewish-12": {
- "x": 702,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "emergency-telephone-12": {
- "x": 702,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "hairdresser-12": {
- "x": 702,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "religious-muslim-12": {
- "x": 702,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "laundry-12": {
- "x": 702,
- "y": 260,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "cafe-12": {
- "x": 702,
- "y": 286,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "restaurant-12": {
- "x": 702,
- "y": 312,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "fire-station-12": {
- "x": 702,
- "y": 338,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "danger-12": {
- "x": 702,
- "y": 364,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "roadblock-12": {
- "x": 702,
- "y": 390,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "museum-12": {
- "x": 702,
- "y": 416,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "bus-12": {
- "x": 702,
- "y": 442,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "rocket-12": {
- "x": 702,
- "y": 468,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "library-12": {
- "x": 702,
- "y": 494,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "college-12": {
- "x": 702,
- "y": 520,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "school-12": {
- "x": 702,
- "y": 546,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "music-12": {
- "x": 702,
- "y": 572,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "building-12": {
- "x": 702,
- "y": 598,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "scooter-12": {
- "x": 702,
- "y": 624,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "garden-12": {
- "x": 702,
- "y": 650,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "harbor-12": {
- "x": 702,
- "y": 676,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "shop-12": {
- "x": 0,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "oil-well-12": {
- "x": 26,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "bicycle-12": {
- "x": 52,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "skiing-12": {
- "x": 78,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "lighthouse-12": {
- "x": 104,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "clothing-store-12": {
- "x": 130,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "slaughterhouse-12": {
- "x": 156,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "park-12": {
- "x": 182,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "beer-12": {
- "x": 208,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "soccer-12": {
- "x": 234,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "-12": {
- "x": 260,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "dam-12": {
- "x": 286,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "square-12": {
- "x": 312,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "park2-12": {
- "x": 338,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "basketball-12": {
- "x": 364,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "square-stroked-12": {
- "x": 390,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "lodging-12": {
- "x": 416,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "city-12": {
- "x": 442,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "star-12": {
- "x": 468,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "parking-12": {
- "x": 494,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "baseball-12": {
- "x": 520,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "star-stroked-12": {
- "x": 546,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "embassy-12": {
- "x": 572,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "heart-12": {
- "x": 598,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "suitcase-12": {
- "x": 624,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "parking-garage-12": {
- "x": 650,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "bar-12": {
- "x": 676,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "swimming-12": {
- "x": 702,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "logging-12": {
- "x": 728,
- "y": 0,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "circle-stroked-12": {
- "x": 728,
- "y": 26,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "telephone-12": {
- "x": 728,
- "y": 52,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "pharmacy-12": {
- "x": 728,
- "y": 78,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "bank-12": {
- "x": 728,
- "y": 104,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "tennis-12": {
- "x": 728,
- "y": 130,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "entrance-12": {
- "x": 728,
- "y": 156,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "cross-12": {
- "x": 728,
- "y": 182,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "theatre-12": {
- "x": 728,
- "y": 208,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "pitch-12": {
- "x": 728,
- "y": 234,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "bakery-12": {
- "x": 728,
- "y": 260,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "toilets-12": {
- "x": 728,
- "y": 286,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "london-underground-12": {
- "x": 728,
- "y": 312,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "circle-12": {
- "x": 728,
- "y": 338,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "town-12": {
- "x": 728,
- "y": 364,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "place-of-worship-12": {
- "x": 728,
- "y": 390,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "art-gallery-12": {
- "x": 728,
- "y": 416,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "town-hall-12": {
- "x": 728,
- "y": 442,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "golf-12": {
- "x": 728,
- "y": 468,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "heliport-12": {
- "x": 728,
- "y": 494,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "triangle-12": {
- "x": 728,
- "y": 520,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "playground-12": {
- "x": 728,
- "y": 546,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "america-football-12": {
- "x": 728,
- "y": 572,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "triangle-stroked-12": {
- "x": 728,
- "y": 598,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "marker-12": {
- "x": 728,
- "y": 624,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "cinema-12": {
- "x": 728,
- "y": 650,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "village-12": {
- "x": 728,
- "y": 676,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "police-12": {
- "x": 728,
- "y": 702,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "alcohol-shop-12": {
- "x": 0,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "warehouse-12": {
- "x": 26,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "farm-12": {
- "x": 52,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "dog-park-12": {
- "x": 78,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "waste-basket-12": {
- "x": 104,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "polling-place-12": {
- "x": 130,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "airport-12": {
- "x": 156,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "water-12": {
- "x": 182,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "marker-stroked-12": {
- "x": 208,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "fast-food-12": {
- "x": 234,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "post-12": {
- "x": 260,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "wetland-12": {
- "x": 286,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "hospital-12": {
- "x": 312,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "airfield-12": {
- "x": 338,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "zoo-12": {
- "x": 364,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "chemist-12": {
- "x": 390,
- "y": 728,
- "width": 24,
- "height": 24,
- "pixelRatio": 2,
- "sdf": false
- },
- "wave": {
- "x": 664,
- "y": 646,
- "width": 32,
- "height": 16,
- "pixelRatio": 2,
- "sdf": false
- }
-} \ No newline at end of file
diff --git a/styles/bright/img/sprite@2x.png b/styles/bright/img/sprite@2x.png
deleted file mode 100644
index ef7c1f45d1..0000000000
--- a/styles/bright/img/sprite@2x.png
+++ /dev/null
Binary files differ
diff --git a/styles/bright/style.json b/styles/bright/style.json
deleted file mode 100644
index 917244648c..0000000000
--- a/styles/bright/style.json
+++ /dev/null
@@ -1,1335 +0,0 @@
-{
- "version": 4,
- "sprite": "img/sprite",
- "glyphs": "mapbox://fontstack/{fontstack}/{range}.pbf",
- "constants": {
- "@name": "{name_en}",
- "@sans": "Open Sans Regular, Arial Unicode MS Regular",
- "@sans_it": "Open Sans Italic, Arial Unicode MS Regular",
- "@sans_md": "Open Sans Semibold, Arial Unicode MS Bold",
- "@sans_bd": "Open Sans Bold, Arial Unicode MS Bold",
- "@land": "#f8f4f0",
- "@water": "#a0c8f0",
- "@admin": "#446",
- "@admin-opacity": 0.5,
- "@park": "#d8e8c8",
- "@cemetary": "#e0e4dd",
- "@hospital": "#fde",
- "@school": "#f0e8f8",
- "@wood": "#6a4",
- "@building": "#f2eae2",
- "@building_shadow": "#dfdbd7",
- "@building_color_transition": {
- "base": 1,
- "stops": [[15.5, "#f2eae2"], [16, "#dfdbd7"]]
- },
- "@building_opacity": {"base": 1, "stops": [[15, 0], [16, 1]]},
- "@aeroway": "#f0ede9",
- "@motorway": "#fc8",
- "@motorway_casing": "#e9ac77",
- "@motorway_tunnel": "#ffdaa6",
- "@main": "#fea",
- "@main_tunnel": "#fff4c6",
- "@street": "#fff",
- "@street_limited": "#f3f3f3",
- "@street_casing": "#cfcdca",
- "@path": "#cba",
- "@rail": "#bbb",
- "@text": "#334",
- "@text_halo": "rgba(255,255,255,0.8)",
- "@marine_text": "#74aee9",
- "@marine_text_halo": "rgba(255,255,255,0.7)",
- "@poi_text": "#666",
- "@poi_text_halo": "#ffffff",
- "@maki": "#666",
- "@point_translate": [0, -30],
- "@tunnel_line_dasharray": [{
- "base": 1.5, "stops": [[12, 6], [20, 9]]
- }, {
- "base": 1.5, "stops": [[12, 2], [20, 3]]
- }],
- "@motorway_width": {"base": 1.2, "stops": [[6.5, 0], [7, 0.5], [20, 18]]},
- "@motorway_casing_width": {"base": 1.2, "stops": [[5, 0.4], [6, 0.6], [7, 1.5], [20, 22]]},
- "@motorway_link_width": {"base": 1.2, "stops": [[12.5, 0], [13, 1.5], [20, 10]]},
- "@motorway_link_casing_width": {"base": 1.2, "stops": [[12, 1], [13, 3], [20, 13]]},
- "@main_width": {"base": 1.2, "stops": [[6.5, 0], [7, 0.5], [20, 14]]},
- "@main_casing_width": {"base": 1.2, "stops": [[5, 0.1], [6, 0.2], [7, 1.5], [20, 18]]},
- "@street_width": {"base": 1.2, "stops": [[13.5, 0], [14, 2.5], [20, 11.5]]},
- "@street_casing_width": {"base": 1.2, "stops": [[12, 0.5], [13, 1], [14, 4], [20, 15]]},
- "@street_casing_opacity": {"stops": [[12, 0], [12.5, 1]]},
- "@service_casing_width": {"base": 1.2, "stops": [[15, 1], [16, 4], [20, 11]]},
- "@service_width": {"base": 1.2, "stops": [[15.5, 0], [16, 2], [20, 7.5]]},
- "@path_width": {"base": 1.2, "stops": [[15, 1.2], [20, 4]]},
- "@path_line_dasharray": [{
- "base": 1.2, "stops": [[15, 2], [20, 4]]
- },{
- "base": 1.2, "stops": [[15, 1], [20, 2]]
- }],
- "@rail_width": {"base": 1.4, "stops": [[14, 0.4], [15, 0.75], [20, 2]]},
- "@rail_hatch_width": {"base": 1.4, "stops": [[14.5, 0], [15, 3], [20, 8]]},
- "@rail_hatch_line_dasharray": [2, 30],
- "@admin_level_3_width": {
- "base": 1,
- "stops": [[4, 0.4], [5, 1], [12, 3]]
- },
- "@admin_level_2_width": {
- "base": 1,
- "stops": [[4, 1.4], [5, 2], [12, 8]]
- }
- },
- "sources": {
- "mapbox": {
- "type": "vector",
- "url": "mapbox://mapbox.mapbox-streets-v6-dev",
- "maxZoom": 15
- }
- },
- "layers": [{
- "id": "background",
- "style": {
- "background-color": "@land"
- },
- "type": "background"
- }, {
- "id": "landuse_park",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "park" },
- "style": {
- "fill-color": "@park"
- },
- "type": "fill"
- }, {
- "id": "landuse_cemetary",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "cemetary" },
- "style": {
- "fill-color": "@cemetary"
- },
- "type": "fill"
- }, {
- "id": "landuse_hospital",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "hospital" },
- "style": {
- "fill-color": "@hospital"
- },
- "type": "fill"
- }, {
- "id": "landuse_school",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "school" },
- "style": {
- "fill-color": "@school"
- },
- "type": "fill"
- }, {
- "id": "landuse_wood",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "wood" },
- "style": {
- "fill-color": "@wood",
- "fill-opacity": 0.1
- },
- "type": "fill"
- }, {
- "id": "waterway",
- "source": "mapbox",
- "source-layer": "waterway",
- "filter": {
- "class": {
- "!=": ["river", "stream", "canal"]
- }
- },
- "render": {
- "line-cap": "round"
- },
- "style": {
- "line-color": "@water",
- "line-width": {
- "base": 1.3,
- "stops": [[13, 0.5], [20, 2]]
- }
- },
- "type": "line"
- }, {
- "id": "waterway_river",
- "source": "mapbox",
- "source-layer": "waterway",
- "filter": { "class": "river" },
- "render": {
- "line-cap": "round"
- },
- "style": {
- "line-color": "@water",
- "line-width": {
- "base": 1.2,
- "stops": [[11, 0.5], [20, 6]]
- }
- },
- "type": "line"
- }, {
- "id": "waterway_stream_canal",
- "source": "mapbox",
- "source-layer": "waterway",
- "filter": { "class": ["stream", "canal"] },
- "render": {
- "line-cap": "round"
- },
- "style": {
- "line-color": "@water",
- "line-width": {
- "base": 1.3,
- "stops": [[13, 0.5], [20, 6]]
- }
- },
- "type": "line"
- }, {
- "id": "water",
- "source": "mapbox",
- "source-layer": "water",
- "style": {
- "fill-color": "@water"
- },
- "type": "fill"
- }, {
- "id": "water_offset",
- "source": "mapbox",
- "source-layer": "water",
- "type": "fill",
- "style": {
- "fill-color": "white",
- "fill-opacity": 0.3,
- "fill-translate": [0, 2.5]
- }
- }, {
- "id": "water_pattern",
- "ref": "water",
- "style": {
- "fill-image": "wave",
- "fill-translate": [0, 2.5]
- }
- }, {
- "id": "aeroway_fill",
- "source": "mapbox",
- "source-layer": "aeroway",
- "min-zoom": 11,
- "filter": {
- "$type": "Polygon"
- },
- "style": {
- "fill-color": "@aeroway",
- "fill-opacity": 0.7
- },
- "type": "fill"
- }, {
- "id": "aeroway_runway",
- "source": "mapbox",
- "source-layer": "aeroway",
- "min-zoom": 11,
- "filter": {
- "$type": "LineString",
- "type": "runway" },
- "style": {
- "line-color": "@aeroway",
- "line-width": {
- "base": 1.2,
- "stops": [[11, 3], [20, 16]]
- }
- },
- "type": "line"
- }, {
- "id": "aeroway_taxiway",
- "source": "mapbox",
- "source-layer": "aeroway",
- "min-zoom": 11,
- "filter": {
- "$type": "LineString",
- "type": "taxiway" },
- "style": {
- "line-color": "@aeroway",
- "line-width": {
- "base": 1.2,
- "stops": [[11, 0.5], [20, 6]]
- }
- },
- "type": "line"
- }, {
- "id": "building",
- "source": "mapbox",
- "source-layer": "building",
- "style": {
- "fill-color": "@building_color_transition"
- },
- "type": "fill"
- }, {
- "id": "building_top",
- "ref": "building",
- "style": {
- "fill-color": "@building",
- "fill-opacity": "@building_opacity",
- "fill-translate": [{
- "base": 1,
- "stops": [[15, 0], [16, -2] ]
- }, {
- "base": 1,
- "stops": [[15, 0], [16, -2] ]
- }],
- "fill-outline-color": "@building_shadow"
- }
- }, {
- "id": "tunnel_motorway_link_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "motorway_link" },
- "render": {
- "line-cap": "round",
- "line-join": "round"
- },
- "style": {
- "line-color": "@motorway_casing",
- "line-dasharray": "@tunnel_line_dasharray",
- "line-width": "@motorway_link_casing_width"
- },
- "type": "line"
- }, {
- "id": "tunnel_service_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "service" },
- "render": {
- "line-cap": "round",
- "line-join": "round"
- },
- "style": {
- "line-color": "@street_casing",
- "line-dasharray": "@tunnel_line_dasharray",
- "line-width": "@service_casing_width"
- },
- "type": "line"
- }, {
- "id": "tunnel_street_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": ["street", "street_limited"] },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "@street_casing",
- "line-dasharray": [7, 2],
- "line-width": "@street_casing_width",
- "line-opacity": "@street_casing_opacity"
- },
- "type": "line"
- }, {
- "id": "tunnel_main_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "main" },
- "render": {
- "line-cap": "round",
- "line-join": "round"
- },
- "style": {
- "line-color": "@motorway_casing",
- "line-dasharray": "@tunnel_line_dasharray",
- "line-width": "@main_casing_width"
- },
- "type": "line"
- }, {
- "id": "tunnel_motorway_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "motorway" },
- "render": {
- "line-cap": "round",
- "line-join": "round"
- },
- "style": {
- "line-color": "@motorway_casing",
- "line-dasharray": "@tunnel_line_dasharray",
- "line-width": "@motorway_casing_width"
- },
- "type": "line"
- }, {
- "id": "tunnel_path",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "path" },
- "type": "line",
- "style": {
- "line-color": "@path",
- "line-dasharray": "@path_line_dasharray",
- "line-width": "@path_width"
- }
- }, {
- "id": "tunnel_motorway_link",
- "ref": "tunnel_motorway_link_casing",
- "style": {
- "line-color": "@motorway",
- "line-width": "@motorway_link_width"
- }
- }, {
- "id": "tunnel_service",
- "ref": "tunnel_service_casing",
- "style": {
- "line-color": "@street",
- "line-width": "@service_width"
- }
- }, {
- "id": "tunnel_street",
- "ref": "tunnel_street_casing",
- "style": {
- "line-color": "@street",
- "line-width": "@street_width"
- }
- }, {
- "id": "tunnel_main",
- "ref": "tunnel_main_casing",
- "style": {
- "line-color": "@main_tunnel",
- "line-width": "@main_width"
- }
- }, {
- "id": "tunnel_motorway",
- "ref": "tunnel_motorway_casing",
- "style": {
- "line-color": "@motorway_tunnel",
- "line-width": "@motorway_width"
- }
- }, {
- "id": "tunnel_major_rail",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "major_rail" },
- "style": {
- "line-color": "@rail",
- "line-width": "@rail_width"
- },
- "type": "line"
- }, {
- "id": "tunnel_major_rail_hatching",
- "ref": "tunnel_major_rail",
- "style": {
- "line-color": "@rail",
- "line-dasharray": "@rail_hatch_line_dasharray",
- "line-width": "@rail_hatch_width"
- }
- }, {
- "id": "road_motorway_link_casing",
- "source": "mapbox",
- "source-layer": "road",
- "min-zoom": 12,
- "filter": { "class": "motorway_link" },
- "render": {
- "line-cap": "round",
- "line-join": "round"
- },
- "style": {
- "line-color": "@motorway_casing",
- "line-width": "@motorway_link_casing_width"
- },
- "type": "line"
- }, {
- "id": "road_service_casing",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": "service" },
- "render": {
- "line-cap": "round",
- "line-join": "round"
- },
- "style": {
- "line-color": "@street_casing",
- "line-width": "@service_casing_width"
- },
- "type": "line"
- }, {
- "id": "road_street_casing",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": ["street", "street_limited"], "$type": "LineString" },
- "render": {
- "line-cap": "round",
- "line-join": "round"
- },
- "style": {
- "line-color": "@street_casing",
- "line-width": "@street_casing_width",
- "line-opacity": "@street_casing_opacity"
- },
- "type": "line"
- }, {
- "id": "road_main_casing",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": "main" },
- "render": {
- "line-cap": "round",
- "line-join": "round"
- },
- "style": {
- "line-color": "@motorway_casing",
- "line-width": "@main_casing_width"
- },
- "type": "line"
- }, {
- "id": "road_motorway_casing",
- "source": "mapbox",
- "source-layer": "road",
- "min-zoom": 5,
- "filter": { "class": "motorway" },
- "render": {
- "line-cap": "round",
- "line-join": "round"
- },
- "style": {
- "line-color": "@motorway_casing",
- "line-width": "@motorway_casing_width"
- },
- "type": "line"
- }, {
- "id": "road_path",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": "path" },
- "style": {
- "line-color": "@path",
- "line-dasharray": "@path_line_dasharray",
- "line-width": "@path_width"
- },
- "type": "line"
- }, {
- "id": "road_motorway_link",
- "ref": "road_motorway_link_casing",
- "style": {
- "line-color": "@motorway",
- "line-width": "@motorway_link_width"
- }
- }, {
- "id": "road_service",
- "ref": "road_service_casing",
- "style": {
- "line-color": "@street",
- "line-width": "@service_width"
- }
- }, {
- "id": "road_street",
- "ref": "road_street_casing",
- "style": {
- "line-color": "@street",
- "line-width": "@street_width"
- }
- }, {
- "id": "road_main",
- "ref": "road_main_casing",
- "style": {
- "line-color": "@main",
- "line-width": "@main_width"
- }
- }, {
- "id": "road_motorway",
- "ref": "road_motorway_casing",
- "style": {
- "line-color": "@motorway",
- "line-width": "@motorway_width"
- },
- "type": "line"
- }, {
- "id": "road_major_rail",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": "major_rail" },
- "style": {
- "line-color": "@rail",
- "line-width": "@rail_width"
- },
- "type": "line"
- }, {
- "id": "road_major_rail_hatching",
- "ref": "road_major_rail",
- "style": {
- "line-color": "@rail",
- "line-dasharray": "@rail_hatch_line_dasharray",
- "line-width": "@rail_hatch_width"
- }
- }, {
- "id": "bridge_motorway_link_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "motorway_link" },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "@motorway_casing",
- "line-width": "@motorway_link_casing_width"
- },
- "type": "line"
- }, {
- "id": "bridge_motorway_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "motorway" },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "@motorway_casing",
- "line-width": "@motorway_casing_width"
- },
- "type": "line"
- }, {
- "id": "bridge_service_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "service" },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "@street_casing",
- "line-width": "@service_casing_width"
- },
- "type": "line"
- }, {
- "id": "bridge_street_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": ["street", "street_limited"] },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "@street_casing",
- "line-width": "@street_casing_width",
- "line-opacity": "@street_casing_opacity"
- },
- "type": "line"
- }, {
- "id": "bridge_main_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "main" },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "@motorway_casing",
- "line-width": "@main_casing_width"
- },
- "type": "line"
- }, {
- "id": "bridge_path",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "path" },
- "style": {
- "line-color": "@path",
- "line-dasharray": "@path_line_dasharray",
- "line-width": "@path_width"
- },
- "type": "line"
- }, {
- "id": "bridge_motorway_link",
- "ref": "bridge_motorway_link_casing",
- "style": {
- "line-color": "@motorway",
- "line-width": "@motorway_link_width"
- }
- }, {
- "id": "bridge_service",
- "ref": "bridge_service_casing",
- "style": {
- "line-color": "@street",
- "line-width": "@service_width"
- }
- }, {
- "id": "bridge_street",
- "ref": "bridge_street_casing",
- "style": {
- "line-color": "@street",
- "line-width": "@street_width"
- }
- }, {
- "id": "bridge_main",
- "ref": "bridge_main_casing",
- "style": {
- "line-color": "@main",
- "line-width": "@main_width"
- }
- }, {
- "id": "bridge_motorway",
- "ref": "bridge_motorway_casing",
- "style": {
- "line-color": "@motorway",
- "line-width": "@motorway_width"
- }
- }, {
- "id": "bridge_major_rail",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "major_rail" },
- "style": {
- "line-color": "@rail",
- "line-width": "@rail_width"
- },
- "type": "line"
- }, {
- "id": "bridge_major_rail_hatching",
- "ref": "bridge_major_rail",
- "style": {
- "line-color": "@rail",
- "line-dasharray": "@rail_hatch_line_dasharray",
- "line-width": "@rail_hatch_width"
- }
- }, {
- "id": "admin_level_3",
- "source": "mapbox",
- "source-layer": "admin",
- "filter": {
- "admin_level": {">=": 3},
- "maritime": 0
- },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "@admin",
- "line-opacity": "@admin-opacity",
- "line-dasharray": [10, 3],
- "line-width": "@admin_level_3_width"
- },
- "type": "line"
- }, {
- "id": "admin_level_2",
- "source": "mapbox",
- "source-layer": "admin",
- "filter": {
- "admin_level": 2,
- "disputed": 0,
- "maritime": 0
- },
- "render": {
- "line-cap": "round"
- },
- "style": {
- "line-color": "@admin",
- "line-opacity": "@admin-opacity",
- "line-width": "@admin_level_2_width"
- },
- "type": "line"
- }, {
- "id": "admin_level_2_disputed",
- "source": "mapbox",
- "source-layer": "admin",
- "filter": {
- "admin_level": 2,
- "disputed": 1,
- "maritime": 0
- },
- "render": {
- "line-cap": "round"
- },
- "style": {
- "line-color": "@admin",
- "line-opacity": "@admin-opacity",
- "line-dasharray": [4, 4],
- "line-width": "@admin_level_2_width"
- },
- "type": "line"
- }, {
- "id": "admin_level_3_maritime",
- "source": "mapbox",
- "source-layer": "admin",
- "filter": {
- "admin_level": {">=": 3},
- "maritime": 1
- },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "@water",
- "line-opacity": "@admin-opacity",
- "line-dasharray": [10, 3],
- "line-width": "@admin_level_3_width"
- },
- "type": "line"
- }, {
- "id": "admin_level_2_maritime",
- "source": "mapbox",
- "source-layer": "admin",
- "filter": {
- "admin_level": 2,
- "maritime": 1
- },
- "render": {
- "line-cap": "round"
- },
- "style": {
- "line-color": "@water",
- "line-opacity": "@admin-opacity",
- "line-width": "@admin_level_2_width"
- },
- "type": "line"
- }, {
- "id": "country_label_line",
- "source": "mapbox",
- "source-layer": "country_label_line",
- "style": {
- "line-color": "@text",
- "line-opacity": 0.5
- },
- "type": "line"
- }, {
- "id": "country_label_1",
- "source": "mapbox",
- "source-layer": "country_label",
- "filter": {
- "scalerank": 1
- },
- "render": {
- "text-font": "@sans_bd",
- "text-field": "@name",
- "text-max-width": 6.25,
- "text-transform": "uppercase",
- "text-max-size": 17
- },
- "style": {
- "text-color": "@text",
- "text-halo-color": "@text_halo",
- "text-halo-width": 2,
- "text-halo-blur": 1,
- "text-size": {
- "stops": [[2, 13], [4, 17]]
- }
- },
- "type": "symbol"
- }, {
- "id": "country_label_2",
- "source": "mapbox",
- "source-layer": "country_label",
- "filter": {
- "scalerank": 2
- },
- "render": {
- "text-font": "@sans_bd",
- "text-field": "{name_en}",
- "text-max-width": 6.25,
- "text-transform": "uppercase",
- "text-max-size": 17
- },
- "style": {
- "text-color": "@text",
- "text-halo-color": "@text_halo",
- "text-halo-width": 2,
- "text-halo-blur": 1,
- "text-size": {
- "stops": [[3, 13], [5, 17]]
- }
- },
- "type": "symbol"
- }, {
- "id": "country_label_3",
- "source": "mapbox",
- "source-layer": "country_label",
- "filter": {
- "scalerank": 3
- },
- "render": {
- "text-font": "@sans_bd",
- "text-field": "@name",
- "text-max-width": 6.25,
- "text-transform": "uppercase",
- "text-max-size": 17
- },
- "style": {
- "text-color": "@text",
- "text-halo-color": "@text_halo",
- "text-halo-width": 2,
- "text-halo-blur": 1,
- "text-size": {
- "stops": [[4, 13], [7, 17]]
- }
- },
- "type": "symbol"
- }, {
- "id": "country_label_4",
- "source": "mapbox",
- "source-layer": "country_label",
- "filter": {
- "scalerank": {">=": 4}
- },
- "render": {
- "text-font": "@sans_bd",
- "text-field": "@name",
- "text-max-width": 6.25,
- "text-transform": "uppercase",
- "text-max-size": 15
- },
- "style": {
- "text-color": "@text",
- "text-halo-color": "@text_halo",
- "text-halo-width": 2,
- "text-halo-blur": 1,
- "text-size": {
- "stops": [[5, 13], [6, 15]]
- }
- },
- "type": "symbol"
- }, {
- "id": "marine_label_point_1",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": {"labelrank": 1, "$type": "Point"},
- "render": {
- "text-font": "@sans_it",
- "text-field": "@name",
- "text-max-size": 22,
- "text-max-width": 5,
- "text-letter-spacing": 0.2,
- "text-line-height": 1.6,
- "symbol-placement": "point",
- "text-offset": [0, 2.4]
- },
- "style": {
- "text-color": "@marine_text",
- "text-halo-color": "@marine_text_halo",
- "text-halo-width": 0.75,
- "text-halo-blur": 0.75,
- "text-size": {
- "stops": [[3, 18], [4, 22]]
- }
- },
- "type": "symbol"
- }, {
- "id": "marine_label_line_1",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": {"labelrank": 1, "$type": "LineString"},
- "render": {
- "text-font": "@sans_it",
- "text-field": "@name",
- "text-max-size": 14,
- "text-letter-spacing": 0.2,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@marine_text",
- "text-halo-color": "@marine_text_halo",
- "text-halo-width": 0.75,
- "text-halo-blur": 0.75,
- "text-size": {
- "stops": [[3, 18], [4, 22]]
- }
- },
- "type": "symbol"
- }, {
- "id": "marine_label_point_2",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": {"labelrank": 2, "$type": "Point"},
- "render": {
- "text-font": "@sans_it",
- "text-field": "@name",
- "text-max-size": 16,
- "text-max-width": 5,
- "text-letter-spacing": 0.2,
- "symbol-placement": "point"
- },
- "style": {
- "text-color": "@marine_text",
- "text-halo-color": "@marine_text_halo",
- "text-halo-width": 0.75,
- "text-halo-blur": 0.75,
- "text-size": {
- "stops": [[3, 14], [4, 16]]
- }
- },
- "type": "symbol"
- }, {
- "id": "marine_label_line_2",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": {"labelrank": 2, "$type": "LineString"},
- "render": {
- "text-font": "@sans_it",
- "text-field": "@name",
- "text-max-size": 16,
- "text-letter-spacing": 0.2,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@marine_text",
- "text-halo-color": "@marine_text_halo",
- "text-halo-width": 0.75,
- "text-halo-blur": 0.75,
- "text-size": {
- "stops": [[3, 14], [4, 16]]
- }
- },
- "type": "symbol"
- }, {
- "id": "marine_label_3",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": {"labelrank": 3, "$type": "Point"},
- "render": {
- "text-font": "@sans_it",
- "text-field": "@name",
- "text-max-size": 14,
- "text-max-width": 5,
- "text-letter-spacing": 0.2,
- "symbol-placement": "point"
- },
- "style": {
- "text-color": "@marine_text",
- "text-halo-color": "@marine_text_halo",
- "text-halo-width": 0.75,
- "text-halo-blur": 0.75,
- "text-size": {
- "stops": [[3, 11], [4, 14]]
- }
- },
- "type": "symbol"
- }, {
- "id": "marine_label_line_3",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": {"labelrank": 3, "$type": "LineString"},
- "render": {
- "text-font": "@sans_it",
- "text-field": "@name",
- "text-max-size": 14,
- "text-letter-spacing": 0.2,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@marine_text",
- "text-halo-color": "@marine_text_halo",
- "text-halo-width": 0.75,
- "text-halo-blur": 0.75,
- "text-size": {
- "stops": [[3, 11], [4, 14]]
- }
- },
- "type": "symbol"
- }, {
- "id": "marine_label_4",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": {"labelrank": {">=": 4}, "$type": "Point"},
- "render": {
- "text-font": "@sans_it",
- "text-field": "@name",
- "text-max-size": 12,
- "text-max-width": 6,
- "text-letter-spacing": 0.2,
- "symbol-placement": "point"
- },
- "style": {
- "text-color": "@marine_text",
- "text-halo-color": "@marine_text_halo",
- "text-halo-width": 0.75,
- "text-halo-blur": 0.75,
- "text-size": {
- "stops": [[3, 11], [4, 12]]
- }
- },
- "type": "symbol"
- }, {
- "id": "marine_label_line_4",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": {"labelrank": {">=": 4}, "$type": "LineString"},
- "render": {
- "text-font": "@sans_it",
- "text-field": "@name",
- "text-max-size": 12,
- "text-letter-spacing": 0.2,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@marine_text",
- "text-halo-color": "@marine_text_halo",
- "text-halo-width": 0.75,
- "text-halo-blur": 0.75,
- "text-size": {
- "stops": [[3, 11], [4, 12]]
- }
- },
- "type": "symbol"
- }, {
- "id": "place_label_city",
- "source": "mapbox",
- "source-layer": "place_label",
- "filter": { "type": "city" },
- "render": {
- "text-font": "@sans_md",
- "text-field": "@name",
- "text-max-size": 24,
- "text-max-width": 8
- },
- "style": {
- "text-color": "#333",
- "text-halo-color": "@text_halo",
- "text-halo-width": 1.2,
- "text-size": {
- "base": 1.2,
- "stops": [[7, 14], [11, 24]]
- }
- },
- "type": "symbol"
- }, {
- "id": "place_label_town",
- "source": "mapbox",
- "source-layer": "place_label",
- "filter": { "type": "town" },
- "render": {
- "text-font": "@sans",
- "text-field": "@name",
- "text-max-size": 24,
- "text-max-width": 8
- },
- "style": {
- "text-color": "#333",
- "text-halo-color": "@text_halo",
- "text-halo-width": 1.2,
- "text-size": {
- "base": 1.2,
- "stops": [[10, 14], [15, 24]]
- }
- },
- "type": "symbol"
- }, {
- "id": "place_label_village",
- "source": "mapbox",
- "source-layer": "place_label",
- "filter": { "type": "village" },
- "render": {
- "text-font": "@sans",
- "text-field": "@name",
- "text-max-size": 22,
- "text-max-width": 8
- },
- "style": {
- "text-color": "#333",
- "text-halo-color": "@text_halo",
- "text-halo-width": 1.2,
- "text-size": {
- "base": 1.2,
- "stops": [[10, 12], [15, 22]]
- }
- },
- "type": "symbol"
- }, {
- "id": "road_label_highway_shields",
- "source": "mapbox",
- "source-layer": "road_label",
- "filter": {"class": "motorway", "reflen": [1,2,3,4,5,6]},
- "render": {
- "symbol-placement": "line",
- "symbol-min-distance": 500,
- "icon-image": "motorway_{reflen}",
- "icon-max-size": 1,
- "text-field": "{ref}",
- "text-font": "@sans_bd",
- "text-max-size": 11,
- "text-rotation-alignment": "viewport",
- "icon-rotation-alignment": "viewport"
- },
- "style": {
- "text-color": "#765",
- "text-size": 11
- },
- "type": "symbol"
- }, {
- "id": "road_label",
- "source": "mapbox",
- "source-layer": "road_label",
- "filter": { "$type": "LineString" },
- "render": {
- "text-font": "@sans",
- "text-field": "@name",
- "text-max-size": 13,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "#765",
- "text-halo-color": "#fff",
- "text-halo-width": 1,
- "text-halo-blur": 0.5,
- "text-size": {
- "stops": [[13, 12], [14, 13]]
- }
- },
- "type": "symbol"
- }, {
- "id": "place_label_other",
- "source": "mapbox",
- "source-layer": "place_label",
- "filter": { "type": ["hamlet", "suburb", "neighbourhood"] },
- "render": {
- "text-font": "@sans_bd",
- "text-transform": "uppercase",
- "text-letter-spacing": 0.1,
- "text-field": "@name",
- "text-max-size": 14,
- "text-max-width": 9
- },
- "style": {
- "text-color": "#633",
- "text-halo-color": "@text_halo",
- "text-halo-width": 1.2,
- "text-size": {
- "base": 1.2,
- "stops": [[12, 10], [15, 14]]
- }
- },
- "type": "symbol"
- }, {
- "id": "poi_label_1",
- "source": "mapbox",
- "source-layer": "poi_label",
- "filter": { "$type": "Point", "scalerank": 1 },
- "render": {
- "icon-image": "{maki}-12",
- "text-font": "@sans_md",
- "text-field": "@name",
- "text-max-size": 12,
- "text-max-width": 9,
- "text-padding": 2,
- "text-offset": [0, 0.6],
- "text-vertical-align": "top"
- },
- "style": {
- "text-color": "@poi_text",
- "text-size": 12,
- "text-halo-color": "@poi_text_halo",
- "text-halo-width": 1,
- "text-halo-blur": 0.5
- },
- "min-zoom": 13,
- "type": "symbol"
- }, {
- "id": "poi_label_2",
- "source": "mapbox",
- "source-layer": "poi_label",
- "filter": { "$type": "Point", "scalerank": 2 },
- "render": {
- "icon-image": "{maki}-12",
- "text-font": "@sans_md",
- "text-field": "@name",
- "text-max-size": 12,
- "text-max-width": 9,
- "text-padding": 2,
- "text-offset": [0, 0.6],
- "text-vertical-align": "top"
- },
- "style": {
- "text-color": "@poi_text",
- "text-size": 12,
- "text-halo-color": "@poi_text_halo",
- "text-halo-width": 1,
- "text-halo-blur": 0.5
- },
- "min-zoom": 14,
- "type": "symbol"
- }, {
- "id": "poi_label_3",
- "source": "mapbox",
- "source-layer": "poi_label",
- "filter": { "$type": "Point", "scalerank": 3 },
- "render": {
- "icon-image": "{maki}-12",
- "text-font": "@sans_md",
- "text-field": "@name",
- "text-max-size": 12,
- "text-max-width": 9,
- "text-padding": 2,
- "text-offset": [0, 0.6],
- "text-vertical-align": "top"
- },
- "style": {
- "text-color": "@poi_text",
- "text-size": 12,
- "text-halo-color": "@poi_text_halo",
- "text-halo-width": 1,
- "text-halo-blur": 0.5
- },
- "min-zoom": 15,
- "type": "symbol"
- }, {
- "id": "poi_label_4",
- "source": "mapbox",
- "source-layer": "poi_label",
- "filter": { "$type": "Point", "scalerank": 4 },
- "render": {
- "icon-image": "{maki}-12",
- "text-font": "@sans_md",
- "text-field": "@name",
- "text-max-size": 12,
- "text-max-width": 9,
- "text-padding": 2,
- "text-offset": [0, 0.6],
- "text-vertical-align": "top"
- },
- "style": {
- "text-color": "@poi_text",
- "text-size": 12,
- "text-halo-color": "@poi_text_halo",
- "text-halo-width": 1,
- "text-halo-blur": 0.5
- },
- "min-zoom": 16,
- "type": "symbol"
- }, {
- "id": "poi_label_other",
- "source": "mapbox",
- "source-layer": "poi_label",
- "filter": { "$type": "Point", "scalerank": {">=": 5} },
- "render": {
- "icon-image": "{maki}-12",
- "text-font": "@sans_md",
- "text-field": "@name",
- "text-max-size": 12,
- "text-max-width": 9,
- "text-padding": 2,
- "text-offset": [0, 0.6],
- "text-vertical-align": "top"
- },
- "style": {
- "text-color": "@poi_text",
- "text-size": 12,
- "text-halo-color": "@poi_text_halo",
- "text-halo-width": 1,
- "text-halo-blur": 0.5
- },
- "min-zoom": 17,
- "type": "symbol"
- }, {
- "id": "water_label",
- "source": "mapbox",
- "source-layer": "water_label",
- "filter": { "$type": "Point" },
- "render": {
- "text-font": "@sans_it",
- "text-field": "@name",
- "text-max-size": 12,
- "text-max-width": 5
- },
- "style": {
- "text-size": 12,
- "text-color": "@marine_text",
- "text-halo-width": 1.5,
- "text-halo-color": "@marine_text_halo"
- },
- "type": "symbol"
- }]
-}
diff --git a/styles/outdoors/style.json b/styles/outdoors/style.json
deleted file mode 100644
index 91c7874d7a..0000000000
--- a/styles/outdoors/style.json
+++ /dev/null
@@ -1,2223 +0,0 @@
-{
- "version": 4,
- "sprite": "https://www.mapbox.com/mapbox-gl-styles/sprites/outdoors",
- "glyphs": "mapbox://fontstack/{fontstack}/{range}.pbf",
- "constants": {
- "@land": "rgb(244,239,225)",
- "@water": "#cdd",
- "@water_dark": "#185869",
- "@crop": "#eeeed4",
- "@grass": "#e6e6cc",
- "@scrub": "#dfe5c8",
- "@wood": "#cee2bd",
- "@snow": "#f4f8ff",
- "@rock": "#ddd",
- "@sand": "#ffd",
- "@cemetery": "#edf4ed",
- "@pitch": "#fff",
- "@park": "#d4e4bc",
- "@piste": "blue",
- "@school": "#e8dfe0",
- "@hospital": "#f8eee0",
- "@builtup": "#f6faff",
- "@case": "#fff",
- "@motorway": "#cda0a0",
- "@main": "#ddc0b9",
- "@street": "#fff",
- "@text": "#666",
- "@text_stroke": "rgba(255,255,255,0.8)",
- "@country_text": "#222",
- "@marine_text": "#a0bdc0",
- "@water_text": "#185869",
- "@land_night": "#017293",
- "@water_night": "#103",
- "@water_dark_night": "#003366",
- "@crop_night": "#178d96",
- "@grass_night": "#23948a",
- "@scrub_night": "#31a186",
- "@wood_night": "#45b581",
- "@park_night": "#51bd8b",
- "@snow_night": "#5ad9fe",
- "@rock_night": "#999",
- "@sand_night": "#437162",
- "@cemetery_night": "#218c96",
- "@pitch_night": "rgba(255,255,255,0.2)",
- "@school_night": "#01536a",
- "@hospital_night": "#015e7a",
- "@builtup_night": "#014b60",
- "@admin_night": "#ffb680",
- "@text_night": "#fff",
- "@text_water_night": "#2a5b8a",
- "@text_stroke_night": "#103",
- "@text2_stroke_night": "rgba(1,69,89,0.8)",
- "@case_night": "#015e7a",
- "@street_case_night": "#015b76",
- "@motorway_night": "#bbdde7",
- "@main_night": "#64b2c9",
- "@street_night": "#0186ac",
- "@contour_night": "#ffff80",
- "@river_canal_width": {
- "stops": [[10, 0.5], [11, 1], [13, 2], [15, 3]]
- },
- "@stream_width": {
- "stops": [[12, 0.25], [13, 0.5], [15, 1.5], [17, 2]]
- },
- "@motorway_width": {
- "stops": [[4, 0], [5, 0.5], [7, 0.8], [9, 1], [10, 1.2], [11, 2], [12, 3], [13, 4], [14, 6], [15, 9], [16, 12], [17, 14]]
- },
- "@motorway_casing_width": {
- "stops": [[6.5, 0.6], [7, 0.8], [9, 2.8], [10, 3], [11, 4], [12, 5], [13, 6.5], [14, 9], [15, 12], [16, 15], [17, 17]]
- },
- "@motorway_link_width": {
- "stops": [[11, 1.2], [13, 2], [15, 3], [17, 4]]
- },
- "@motorway_link_casing_width": {
- "stops": [[11, 2.8], [13, 3.5], [15, 5], [17, 6]]
- },
- "@main_width": {
- "stops": [[4, 1], [11, 1], [12, 1.5], [13, 2], [14, 3], [15, 6], [16, 10], [17, 12]]
- },
- "@main_casing_width": {
- "stops": [[8, 2.9], [11, 2.9], [12, 3.5], [13, 4], [14, 5.5], [15, 9], [16, 12], [17, 14]]
- },
- "@street_width": {
- "stops": [[13.5, 0], [14, 1.5], [15, 3], [16, 8]]
- },
- "@street_casing_width": {
- "stops": [[12, 0.4], [13, 1], [14, 2.5], [15, 4], [16, 10]]
- },
- "@street_casing_opacity": {
- "stops": [[13, 0], [13.5, 1]]
- },
- "@service_casing_width": {
- "stops": [[13, 0.5], [14, 3], [15, 3.5], [16, 4], [17, 5], [18, 6]]
- },
- "@runway_width": {
- "stops": [[9, 1], [10, 2], [11, 3], [12, 5], [13, 7], [14, 11], [15, 15], [16, 19], [17, 23]]
- },
- "@taxiway_width": {
- "stops": [[9, 0.2], [11, 0.2], [12, 1], [13, 1.5], [14, 2], [15, 3], [16, 4], [17, 5]]
- },
- "@aerialway_width": {
- "stops": [[12.5, 0.8], [13, 1.4], [14, 1.6], [15, 2], [16, 2.4], [17, 3]]
- },
- "@aerialway_casing_width": {
- "stops": [[12.5, 2], [13, 2.5], [14, 3], [15, 3.5], [16, 4], [21, 5]]
- },
- "@path_width": {
- "stops": [[13, 1.2], [14, 1.5], [15, 1.8]]
- },
- "@admin_l2_width": {
- "stops": [[1, 0.5], [2, 0.7], [3, 0.7], [4, 0.8], [5, 1], [7, 2], [9, 3]]
- },
- "@admin_l3_width": {
- "stops": [[5, 0.6], [7, 1], [11, 2]]
- },
- "@road_label_1_size": {
- "stops": [[12, 11], [13, 12], [14, 13], [15, 14], [16, 16], [17, 18]]
- },
- "@road_label_2_size": {
- "stops": [[12, 11], [13, 12], [15, 14], [17, 16]]
- },
- "@road_label_3_size": {
- "stops": [[14, 10], [15, 12], [17, 14]]
- },
- "@fence_width": {
- "stops": [[16, 0.6], [18, 1]]
- },
- "@hedge_width": {
- "stops": [[15, 0.6], [16, 1.2], [18, 1.6]]
- },
- "@barrier_line_land_width": {
- "stops": [[13, 0.4], [14, 0.75], [15, 1.5], [16, 3], [17, 6], [18, 12], [19, 24], [20, 48]]
- },
- "@country_label_size": {
- "stops": [[0, 14], [11, 24]]
- },
- "@poi_label_1-2_size": {
- "stops": [[14, 10], [15, 11], [16, 12]]
- },
- "@poi_label_3_size": {
- "stops": [[15, 10], [16, 11]]
- },
- "@hillshade_prerender": {
- "stops": [[10, 0], [11, 1]]
- },
- "@hillshade_prerender_size": {
- "stops": [[10, 1056], [11, 512], [12, 256]]
- }
- },
- "sources": {
- "mapbox": {
- "type": "vector",
- "url": "mapbox://mapbox.mapbox-terrain-v1,mapbox.mapbox-streets-v6-dev",
- "maxZoom": 15
- }
- },
- "layers": [{
- "id": "background",
- "style": {
- "background-color": "@land"
- },
- "style.night": {
- "background-color": "@land_night"
- },
- "type": "background"
- }, {
- "id": "landcover_snow",
- "source": "mapbox",
- "source-layer": "landcover",
- "filter": { "class": "snow" },
- "style": {
- "fill-color": "@snow"
- },
- "style.night": {
- "fill-color": "@snow_night"
- },
- "type": "fill"
- }, {
- "id": "landcover_crop",
- "source": "mapbox",
- "source-layer": "landcover",
- "filter": { "class": "crop" },
- "style": {
- "fill-color": "@crop"
- },
- "style.night": {
- "fill-color": "@crop_night"
- },
- "type": "fill"
- }, {
- "id": "landcover_grass",
- "source": "mapbox",
- "source-layer": "landcover",
- "filter": { "class": "grass" },
- "style": {
- "fill-color": "@grass",
- "fill-opacity": {
- "stops": [[12, 1], [13, 0.8], [16, 0.2]]
- }
- },
- "style.night": {
- "fill-color": "@grass_night",
- "fill-opacity": {
- "stops": [[12, 1], [13, 0.8], [16, 0.2]]
- }
- },
- "type": "fill"
- }, {
- "id": "landcover_scrub",
- "source": "mapbox",
- "source-layer": "landcover",
- "filter": { "class": "scrub" },
- "style": {
- "fill-color": "@scrub",
- "fill-opacity": {
- "stops": [[12, 1], [13, 0.8], [16, 0.2]]
- }
- },
- "style.night": {
- "fill-color": "@scrub_night",
- "fill-opacity": {
- "stops": [[12, 1], [13, 0.8], [16, 0.2]]
- }
- },
- "type": "fill"
- }, {
- "id": "landcover_wood",
- "source": "mapbox",
- "source-layer": "landcover",
- "filter": { "class": "wood" },
- "style": {
- "fill-color": "@wood",
- "fill-opacity": {
- "stops": [[12, 1], [13, 0.8], [16, 0.2]]
- }
- },
- "style.night": {
- "fill-color": "@wood_night",
- "fill-opacity": {
- "stops": [[12, 1], [13, 0.8], [16, 0.2]]
- }
- },
- "type": "fill"
- }, {
- "id": "landuse_wood",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "wood" },
- "style": {
- "fill-color": "@wood"
- },
- "style.night": {
- "fill-color": "@wood_night",
- "fill-opacity": 0.8
- },
- "type": "fill"
- }, {
- "id": "landuse_school",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "school" },
- "style": {
- "fill-color": "@school"
- },
- "style.night": {
- "fill-color": "@school_night"
- },
- "type": "fill"
- }, {
- "id": "landuse_sand",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "sand" },
- "style": {
- "fill-color": "@sand"
- },
- "style.night": {
- "fill-color": "@sand_night",
- "fill-opacity": 0.8
- },
- "type": "fill"
- }, {
- "id": "landuse_pitch",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "pitch" },
- "style": {
- "fill-color": "rgba(255,255,255,0.5)",
- "fill-outline-color": "@pitch"
- },
- "style.night": {
- "fill-color": "@pitch_night",
- "fill-outline-color": "@pitch"
- },
- "type": "fill"
- }, {
- "id": "landuse_park",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "park" },
- "style": {
- "fill-color": "@park"
- },
- "style.night": {
- "fill-color": "@park_night"
- },
- "type": "fill"
- }, {
- "id": "landuse_industrial",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "industrial" },
- "style": {
- "fill-color": "rgba(246,250,255,0.5)"
- },
- "style.night": {
- "fill-color": "@builtup_night"
- },
- "type": "fill"
- }, {
- "id": "landuse_scrub",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "scrub" },
- "style": {
- "fill-color": "@scrub"
- },
- "style.night": {
- "fill-color": "@scrub_night",
- "fill-opacity": 0.8
- },
- "type": "fill"
- }, {
- "id": "landuse_grass",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "grass" },
- "style": {
- "fill-color": "@grass"
- },
- "style.night": {
- "fill-color": "@grass_night",
- "fill-opacity": 0.8
- },
- "type": "fill"
- }, {
- "id": "landuse_crop",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "crop" },
- "style": {
- "fill-color": "@crop"
- },
- "style.night": {
- "fill-color": "@crop_night",
- "fill-opacity": 0.8
- },
- "type": "fill"
- }, {
- "id": "landuse_rock",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "rock" },
- "style": {
- "fill-color": "@rock"
- },
- "style.night": {
- "fill-color": "@rock_night",
- "fill-opacity": 0.8
- },
- "type": "fill"
- }, {
- "id": "landuse_snow",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "snow" },
- "style": {
- "fill-color": "@snow"
- },
- "style.night": {
- "fill-color": "@snow_night",
- "fill-opacity": 0.8
- },
- "type": "fill"
- }, {
- "id": "landuse_hospital",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "hospital" },
- "style": {
- "fill-color": "@hospital"
- },
- "style.night": {
- "fill-color": "@hospital_night"
- },
- "type": "fill"
- }, {
- "id": "landuse_cemetery",
- "source": "mapbox",
- "source-layer": "landuse",
- "filter": { "class": "cemetery" },
- "style": {
- "fill-color": "@cemetery"
- },
- "style.night": {
- "fill-color": "@cemetery_night"
- },
- "type": "fill"
- }, {
- "id": "overlay_breakwater_pier",
- "source": "mapbox",
- "source-layer": "landuse_overlay",
- "filter": { "class": ["breakwater", "pier"] },
- "style": {
- "fill-color": "@land"
- },
- "style.night": {
- "fill-color": "@land_night"
- },
- "type": "fill"
- }, {
- "id": "waterway_river_canal",
- "source": "mapbox",
- "source-layer": "waterway",
- "filter": { "type": ["river", "canal"] },
- "render": {
- "line-cap": "round"
- },
- "style": {
- "line-color": "#87abaf",
- "line-width": "@river_canal_width"
- },
- "style.night": {
- "line-color": "rgb(10,20,71)",
- "line-width": "@river_canal_width"
- },
- "type": "line"
- }, {
- "id": "waterway_stream",
- "source": "mapbox",
- "source-layer": "waterway",
- "filter": { "type": "stream" },
- "render": {
- "line-cap": "round"
- },
- "style": {
- "line-color": "#87abaf",
- "line-width": "@stream_width"
- },
- "style.night": {
- "line-color": "rgb(10,20,71)",
- "line-width": "@stream_width"
- },
- "type": "line"
- }, {
- "id": "hillshade_rasters",
- "type": "raster",
- "source": "mapbox",
- "render": {
- "raster-size": 512,
- "raster-blur": 1
- },
- "style": {
- "raster-opacity": 1
- },
- "layers": [
- {
- "id": "hillshade_full_highlight",
- "source": "mapbox",
- "source-layer": "hillshade",
- "filter": { "class": "full_highlight" },
- "style": {
- "fill-color": "#fffff3",
- "fill-antialias": false,
- "fill-opacity": {
- "stops": [[14, 0.3], [15, 0.3], [16, 0.2], [17, 0.2], [18, 0.1]]
- }
- },
- "style.night": {
- "fill-color": "#fdfdad",
- "fill-antialias": false,
- "fill-opacity": {
- "stops": [[13, 0.4], [14, 0.3], [16, 0.2], [17, 0.1], [18, 0.05]]
- }
- },
- "type": "fill"
- }, {
- "id": "hillshade_medium_highlight",
- "source": "mapbox",
- "source-layer": "hillshade",
- "filter": { "class": "medium_highlight" },
- "style": {
- "fill-color": "#ffd",
- "fill-antialias": false,
- "fill-opacity": {
- "stops": [[14, 0.3], [15, 0.3], [16, 0.2], [17, 0.2], [18, 0.1]]
- }
- },
- "style.night": {
- "fill-color": "#ffe1b7",
- "fill-antialias": false,
- "fill-opacity": {
- "stops": [[14, 0.3], [16, 0.2], [17, 0.15], [18, 0.05]]
- }
- },
- "type": "fill"
- }, {
- "id": "hillshade_medium_shadow",
- "source": "mapbox",
- "source-layer": "hillshade",
- "filter": { "class": "medium_shadow" },
- "style": {
- "fill-color": "#206",
- "fill-antialias": false,
- "fill-opacity": {
- "stops": [[14, 0.08], [15, 0.075], [16, 0.05], [17, 0.05], [18, 0.025]]
- }
- },
- "style.night": {
- "fill-color": "#206",
- "fill-antialias": false,
- "fill-opacity": {
- "stops": [[15, 0.3], [16, 0.2], [17, 0.1], [18, 0.05]]
- }
- },
- "type": "fill"
- }, {
- "id": "hillshade_full_shadow",
- "source": "mapbox",
- "source-layer": "hillshade",
- "filter": { "class": "full_shadow" },
- "style": {
- "fill-color": "#103",
- "fill-antialias": false,
- "fill-opacity": {
- "stops": [[14, 0.08], [15, 0.075], [16, 0.05], [17, 0.05], [18, 0.025]]
- }
- },
- "style.night": {
- "fill-color": "#103",
- "fill-antialias": false,
- "fill-opacity": {
- "stops": [[15, 0.3], [16, 0.2], [17, 0.1], [18, 0.05]]
- }
- },
- "type": "fill"
- }
- ]
- }, {
- "id": "overlay_wetland",
- "source": "mapbox",
- "source-layer": "landuse_overlay",
- "filter": { "class": ["wetland", "wetland_noveg"] },
- "style": {
- "fill-color": "rgba(210,225,225,0.2)",
- "fill-image": "wetland_noveg_64"
- },
- "style.night": {
- "fill-color": "rgba(210,225,225,0.2)",
- "fill-image": "wetland_noveg_64"
- },
- "type": "fill"
- }, {
- "id": "building_shadow",
- "source": "mapbox",
- "source-layer": "building",
- "style": {
- "fill-color": "#d5d1c6",
- "fill-translate": [1, 1],
- "fill-opacity": {
- "stops": [[15.5, 0], [16, 1]]
- },
- "fill-outline-color": "#d5d1c6"
- },
- "style.night": {
- "fill-color": "#026688",
- "fill-translate": [1, 1],
- "fill-opacity": {
- "stops": [[15.5, 0], [16, 1]]
- },
- "fill-outline-color": "#026688"
- },
- "type": "fill"
- }, {
- "id": "building",
- "ref": "building_shadow",
- "style": {
- "fill-color": "#ebe7db"
- },
- "style.night": {
- "fill-color": "#027797"
- }
- }, {
- "id": "building_wall",
- "ref": "building_shadow",
- "style": {
- "fill-color": "#ebe7db",
- "fill-opacity": {
- "stops": [[15.5, 0], [16, 0.7]]
- },
- "fill-outline-color": "#d5d1c6"
- },
- "style.night": {
- "fill-color": "#027797",
- "fill-opacity": {
- "stops": [[15.5, 0], [16, 0.7]]
- },
- "fill-outline-color": "#026688"
- }
- }, {
- "id": "contour_line_loud",
- "source": "mapbox",
- "source-layer": "contour",
- "filter": { "index": 5 },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "#008",
- "line-width": 0.9,
- "line-opacity": {
- "stops": [[11, 0.05], [12, 0.11]]
- }
- },
- "style.night": {
- "line-color": "@contour_night",
- "line-width": 0.9,
- "line-opacity": {
- "stops": [[11, 0.1], [12, 0.2]]
- }
- },
- "type": "line"
- }, {
- "id": "contour_line_regular",
- "source": "mapbox",
- "source-layer": "contour",
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "#008",
- "line-width": 0.5,
- "line-opacity": {
- "stops": [[11, 0.05], [12, 0.11]]
- }
- },
- "style.night": {
- "line-color": "@contour_night",
- "line-width": 0.5,
- "line-opacity": {
- "stops": [[11, 0.1], [12, 0.4]]
- }
- },
- "type": "line"
- }, {
- "id": "barrier_line_gate",
- "source": "mapbox",
- "source-layer": "barrier_line",
- "filter": { "class": "gate" },
- "style": {
- "line-width": 2.5,
- "line-color": "#aab"
- },
- "style.night": {
- "line-width": 2.5,
- "line-color": "#59596f"
- },
- "type": "line"
- }, {
- "id": "barrier_line_fence",
- "source": "mapbox",
- "source-layer": "barrier_line",
- "filter": { "class": "fence" },
- "style": {
- "line-color": "#aeada3",
- "line-width": "@fence_width"
- },
- "style.night": {
- "line-color": "#014b61",
- "line-width": "@fence_width"
- },
- "type": "line"
- }, {
- "id": "barrier_line_hedge",
- "source": "mapbox",
- "source-layer": "barrier_line",
- "filter": { "class": "hedge" },
- "style": {
- "line-color": "#8de99b",
- "line-width": "@hedge_width"
- },
- "style.night": {
- "line-color": "#2e7a57",
- "line-width": "@hedge_width"
- },
- "type": "line"
- }, {
- "id": "barrier_line_land",
- "source": "mapbox",
- "source-layer": "barrier_line",
- "filter": { "class": "land" },
- "style": {
- "line-color": "@land",
- "line-width": "@barrier_line_land_width"
- },
- "style.night": {
- "line-color": "@land_night",
- "line-width": "@barrier_line_land_width"
- },
- "type": "line"
- }, {
- "id": "barrier_line_land_fill",
- "source": "mapbox",
- "source-layer": "barrier_line",
- "filter": { "class": "land" },
- "style": {
- "fill-color": "@land"
- },
- "style.night": {
- "fill-color": "@land_night"
- },
- "type": "fill"
- }, {
- "id": "barrier_line_cliff",
- "source": "mapbox",
- "source-layer": "barrier_line",
- "filter": { "class": "cliff" },
- "style": {
- "line-color": "#987",
- "line-width": 4
- },
- "style.night": {
- "line-color": "#63574b",
- "line-width": 4
- },
- "type": "line"
- }, {
- "id": "water",
- "source": "mapbox",
- "source-layer": "water",
- "style": {
- "fill-color": "@water",
- "fill-outline-color": "#a2bdc0"
- },
- "style.night": {
- "fill-color": "@water_night",
- "fill-outline-color": "@water_dark_night"
- },
- "type": "fill"
- }, {
- "id": "aeroway_fill",
- "source": "mapbox",
- "source-layer": "aeroway",
- "filter": {
- "$type": "Polygon"
- },
- "style": {
- "fill-color": "#ddd"
- },
- "style.night": {
- "fill-color": "#367"
- },
- "type": "fill"
- }, {
- "id": "aeroway_runway",
- "source": "mapbox",
- "source-layer": "aeroway",
- "filter": { "type": "runway" },
- "style": {
- "line-color": "#ddd",
- "line-width": "@runway_width"
- },
- "style.night": {
- "line-color": "#367",
- "line-width": "@runway_width"
- },
- "type": "line"
- }, {
- "id": "aeroway_taxiway",
- "source": "mapbox",
- "source-layer": "aeroway",
- "filter": { "type": "taxiway" },
- "style": {
- "line-color": "#ddd",
- "line-width": "@taxiway_width"
- },
- "style.night": {
- "line-color": "#367",
- "line-width": "@taxiway_width"
- },
- "type": "line"
- }, {
- "id": "tunnel_motorway_link_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "motorway_link" },
- "style": {
- "line-color": "@case",
- "line-dasharray": [6, 6],
- "line-width": "@motorway_link_casing_width"
- },
- "style.night": {
- "line-color": "@case_night",
- "line-dasharray": [6, 6],
- "line-width": "@motorway_link_casing_width"
- },
- "type": "line"
- }, {
- "id": "tunnel_service_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "service" },
- "style": {
- "line-color": "#000",
- "line-opacity": 0.04,
- "line-dasharray": [6, 6],
- "line-width": "@service_casing_width"
- },
- "style.night": {
- "line-color": "#000",
- "line-opacity": 0.04,
- "line-dasharray": [6, 6],
- "line-width": "@service_casing_width"
- },
- "type": "line"
- }, {
- "id": "tunnel_main_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "main" },
- "style": {
- "line-color": "@case",
- "line-dasharray": [6, 6],
- "line-width": "@main_casing_width",
- "line-opacity": {
- "stops": [[8, 0], [9, 1]]
- }
- },
- "style.night": {
- "line-color": "@case_night",
- "line-dasharray": [6, 6],
- "line-width": "@main_casing_width",
- "line-opacity": {
- "stops": [[8, 0], [9, 1]]
- }
- },
- "type": "line"
- }, {
- "id": "tunnel_street_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": ["street", "street_limited"] },
- "style": {
- "line-color": "#d9d5c6",
- "line-width": "@street_casing_width",
- "line-opacity": "@street_casing_opacity"
- },
- "style.night": {
- "line-color": "@street_case_night",
- "line-width": "@street_casing_width",
- "line-opacity": "@street_casing_opacity"
- },
- "type": "line"
- }, {
- "id": "tunnel_motorway_link",
- "ref": "tunnel_motorway_link_casing",
- "style": {
- "line-color": "#e6cec7",
- "line-width": "@motorway_link_width"
- },
- "style.night": {
- "line-color": "#78b0c1",
- "line-width": "@motorway_link_width"
- }
- }, {
- "id": "tunnel_service",
- "ref": "tunnel_service_casing",
- "style": {
- "line-color": "#e6cec7",
- "line-width": 2
- },
- "style.night": {
- "line-color": "#017ca0",
- "line-width": 2
- }
- }, {
- "id": "tunnel_street",
- "ref": "tunnel_street_casing",
- "style": {
- "line-color": "#d9d5c6",
- "line-width": "@street_width"
- },
- "style.night": {
- "line-color": "@street_night",
- "line-width": "@street_width"
- }
- }, {
- "id": "tunnel_main",
- "ref": "tunnel_main_casing",
- "style": {
- "line-color": "#e6cec7",
- "line-width": "@main_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- },
- "style.night": {
- "line-color": "#78b0c1",
- "line-width": "@main_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- }
- }, {
- "id": "tunnel_motorway_casing",
- "source": "mapbox",
- "source-layer": "tunnel",
- "filter": { "class": "motorway" },
- "style": {
- "line-color": "@case",
- "line-dasharray": [6, 6],
- "line-width": "@motorway_casing_width",
- "line-opacity": {
- "stops": [[8.5, 0], [9, 1]]
- }
- },
- "style.night": {
- "line-color": "@case_night",
- "line-dasharray": [6, 6],
- "line-width": "@motorway_casing_width",
- "line-opacity": {
- "stops": [[8.5, 0], [9, 1]]
- }
- },
- "type": "line"
- }, {
- "id": "tunnel_motorway",
- "ref": "tunnel_motorway_casing",
- "style": {
- "line-color": "#e6cec7",
- "line-width": "@motorway_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- },
- "style.night": {
- "line-color": "#78b0c1",
- "line-width": "@motorway_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- }
- }, {
- "id": "road_path_case",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": "path" },
- "style": {
- "line-color": "#ffd",
- "line-opacity": 0.4,
- "line-width": {
- "stops": [[14, 3], [15, 4]]
- }
- },
- "style.night": {
- "line-color": "@land_night",
- "line-opacity": 0.2
- },
- "type": "line"
- }, {
- "id": "road_path_footway",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "type": "footway" },
- "style": {
- "line-color": "#bba",
- "line-dasharray": [10, 4],
- "line-width": "@path_width"
- },
- "style.night": {
- "line-color": "#fff",
- "line-dasharray": [10, 4],
- "line-width": "@path_width"
- },
- "type": "line"
- }, {
- "id": "road_path_path",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "type": "path" },
- "style": {
- "line-color": "#987",
- "line-dasharray": [10, 4],
- "line-opacity": 0.8,
- "line-width": {
- "stops": [[13, 0.8], [14, 0.9], [15, 1.2]]
- }
- },
- "style.night": {
- "line-color": "#fff",
- "line-dasharray": [10, 4],
- "line-opacity": 0.8,
- "line-width": {
- "stops": [[13, 0.8], [14, 0.9], [15, 1.2]]
- }
- },
- "type": "line"
- }, {
- "id": "road_path_cycleway",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "type": "cycleway" },
- "style": {
- "line-color": "#488",
- "line-dasharray": [10, 4],
- "line-width": "@path_width"
- },
- "style.night": {
- "line-color": "#94e6ff",
- "line-dasharray": [10, 4],
- "line-width": "@path_width"
- },
- "type": "line"
- }, {
- "id": "road_path_mtb",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "type": "mtb" },
- "style": {
- "line-color": "#488",
- "line-dasharray": [12, 4],
- "line-width": "@path_width"
- },
- "style.night": {
- "line-color": "#94e6ff",
- "line-dasharray": [12, 4],
- "line-width": "@path_width"
- },
- "type": "line"
- }, {
- "id": "road_path_piste",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "type": "piste" },
- "style": {
- "line-color": "#87b",
- "line-dasharray": [8, 4],
- "line-width": "@path_width"
- },
- "style.night": {
- "line-color": "#715dae",
- "line-dasharray": [8, 4],
- "line-width": "@path_width"
- },
- "type": "line"
- }, {
- "id": "road_path_steps",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "type": "steps" },
- "style": {
- "line-color": "#bba",
- "line-dasharray": [10, 4],
- "line-width": 4
- },
- "style.night": {
- "line-color": "#016684",
- "line-dasharray": [10, 4],
- "line-opacity": 0.3,
- "line-width": 6
- },
- "type": "line"
- }, {
- "id": "road_major_rail",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "major_rail" },
- "style": {
- "line-color": "#c8c4c0",
- "line-width": 0.8
- },
- "style.night": {
- "line-color": "#c8c4c0",
- "line-width": 0.8
- },
- "type": "line"
- }, {
- "id": "road_major_rail_hatching",
- "ref": "road_major_rail",
- "style": {
- "line-color": "#c8c4c0",
- "line-dasharray": [2, 31],
- "line-width": 5
- },
- "style.night": {
- "line-color": "#c8c4c0",
- "line-dasharray": [2, 31],
- "line-width": 5
- }
- }, {
- "id": "road_motorway_link_casing",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": "motorway_link" },
- "render": {
- "line-join": "round",
- "line-cap": "round"
- },
- "style": {
- "line-color": "@case",
- "line-width": "@motorway_link_casing_width"
- },
- "style.night": {
- "line-color": "@case_night",
- "line-width": "@motorway_link_casing_width"
- },
- "type": "line"
- }, {
- "id": "road_service_casing",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": "service" },
- "render": {
- "line-join": "round",
- "line-cap": "round"
- },
- "style": {
- "line-color": "#000",
- "line-opacity": 0.04,
- "line-width": "@service_casing_width"
- },
- "style.night": {
- "line-color": "#000",
- "line-opacity": 0.04,
- "line-width": "@service_casing_width"
- },
- "type": "line"
- }, {
- "id": "road_main_casing",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": "main" },
- "render": {
- "line-join": "round",
- "line-cap": "round"
- },
- "style": {
- "line-color": "@case",
- "line-width": "@main_casing_width",
- "line-opacity": {
- "stops": [[8, 0], [9, 1]]
- }
- },
- "style.night": {
- "line-color": "@case_night",
- "line-width": "@main_casing_width",
- "line-opacity": {
- "stops": [[8, 0], [9, 1]]
- }
- },
- "type": "line"
- }, {
- "id": "road_street_casing",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": ["street", "street_limited"] },
- "render": {
- "line-join": "round",
- "line-cap": "round"
- },
- "style": {
- "line-color": "#d9d5c6",
- "line-width": "@street_casing_width",
- "line-opacity": "@street_casing_opacity"
- },
- "style.night": {
- "line-color": "@street_case_night",
- "line-width": "@street_casing_width",
- "line-opacity": "@street_casing_opacity"
- },
- "type": "line"
- }, {
- "id": "road_motorway_link",
- "ref": "road_motorway_link_casing",
- "style": {
- "line-color": "@motorway",
- "line-width": "@motorway_link_width"
- },
- "style.night": {
- "line-color": "@motorway_night",
- "line-width": "@motorway_link_width"
- }
- }, {
- "id": "road_service",
- "ref": "road_service_casing",
- "style": {
- "line-color": "@street",
- "line-width": 2
- },
- "style.night": {
- "line-color": "@street_night",
- "line-width": 2
- }
- }, {
- "id": "road_street",
- "ref": "road_street_casing",
- "style": {
- "line-color": "@street",
- "line-width": "@street_width"
- },
- "style.night": {
- "line-color": "@street_night",
- "line-width": "@street_width"
- }
- }, {
- "id": "road_main",
- "ref": "road_main_casing",
- "style": {
- "line-color": "@main",
- "line-width": "@main_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- },
- "style.night": {
- "line-color": "@main_night",
- "line-width": "@main_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- }
- }, {
- "id": "road_motorway_casing",
- "source": "mapbox",
- "source-layer": "road",
- "filter": { "class": "motorway" },
- "render": {
- "line-join": "round",
- "line-cap": "round"
- },
- "style": {
- "line-color": "@case",
- "line-width": "@motorway_casing_width",
- "line-opacity": {
- "stops": [[8.5, 0], [9, 1]]
- }
- },
- "style.night": {
- "line-color": "@case_night",
- "line-width": "@motorway_casing_width",
- "line-opacity": {
- "stops": [[8.5, 0], [9, 1]]
- }
- },
- "type": "line"
- }, {
- "id": "road_motorway",
- "ref": "road_motorway_casing",
- "style": {
- "line-color": "@motorway",
- "line-width": "@motorway_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- },
- "style.night": {
- "line-color": "@motorway_night",
- "line-width": "@motorway_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- }
- }, {
- "id": "bridge_motorway_link_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "motorway_link" },
- "style": {
- "line-color": "@case",
- "line-width": "@motorway_link_casing_width"
- },
- "style.night": {
- "line-color": "@case_night",
- "line-width": "@motorway_link_casing_width"
- },
- "type": "line"
- }, {
- "id": "bridge_service_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "service" },
- "style": {
- "line-color": "#000",
- "line-opacity": 0.04,
- "line-width": "@service_casing_width"
- },
- "style.night": {
- "line-color": "#000",
- "line-opacity": 0.04,
- "line-width": "@service_casing_width"
- },
- "type": "line"
- }, {
- "id": "bridge_main_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "main" },
- "style": {
- "line-color": "@case",
- "line-width": "@main_casing_width",
- "line-opacity": {
- "stops": [[8, 0], [9, 1]]
- }
- },
- "style.night": {
- "line-color": "@case_night",
- "line-width": "@main_casing_width",
- "line-opacity": {
- "stops": [[8, 0], [9, 1]]
- }
- },
- "type": "line"
- }, {
- "id": "bridge_street_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": ["street", "street_limited"] },
- "style": {
- "line-color": "#d9d5c6",
- "line-width": "@street_casing_width",
- "line-opacity": "@street_casing_opacity"
- },
- "style.night": {
- "line-color": "@street_case_night",
- "line-width": "@street_casing_width",
- "line-opacity": "@street_casing_opacity"
- },
- "type": "line"
- }, {
- "id": "bridge_motorway_link",
- "ref": "bridge_motorway_link_casing",
- "style": {
- "line-color": "@motorway",
- "line-width": "@motorway_link_width"
- },
- "style.night": {
- "line-color": "@motorway_night",
- "line-width": "@motorway_link_width"
- }
- }, {
- "id": "bridge_service",
- "ref": "bridge_service_casing",
- "style": {
- "line-color": "@street",
- "line-width": 2
- },
- "style.night": {
- "line-color": "@street_night",
- "line-width": 2
- }
- }, {
- "id": "bridge_street",
- "ref": "bridge_street_casing",
- "style": {
- "line-color": "@street",
- "line-width": "@street_width"
- },
- "style.night": {
- "line-color": "@street_night",
- "line-width": "@street_width"
- }
- }, {
- "id": "bridge_main",
- "ref": "bridge_main_casing",
- "style": {
- "line-color": "@main",
- "line-width": "@main_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- },
- "style.night": {
- "line-color": "@main_night",
- "line-width": "@main_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- }
- }, {
- "id": "bridge_motorway_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "motorway" },
- "style": {
- "line-color": "@case",
- "line-width": "@motorway_casing_width",
- "line-opacity": {
- "stops": [[8.5, 0], [9, 1]]
- }
- },
- "style.night": {
- "line-color": "@case_night",
- "line-width": "@motorway_casing_width",
- "line-opacity": {
- "stops": [[8.5, 0], [9, 1]]
- }
- },
- "type": "line"
- }, {
- "id": "bridge_motorway",
- "ref": "bridge_motorway_casing",
- "style": {
- "line-color": "@motorway",
- "line-width": "@motorway_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- },
- "style.night": {
- "line-color": "@motorway_night",
- "line-width": "@motorway_width",
- "line-opacity": {
- "stops": [[5.5, 0], [6, 1]]
- }
- }
- }, {
- "id": "bridge_aerialway_casing",
- "source": "mapbox",
- "source-layer": "bridge",
- "filter": { "class": "aerialway" },
- "style": {
- "line-color": "white",
- "line-opacity": 0.5,
- "line-width": "@aerialway_casing_width"
- },
- "style.night": {
- "line-color": "white",
- "line-opacity": 0.5,
- "line-width": "@aerialway_casing_width"
- },
- "type": "line"
- }, {
- "id": "bridge_aerialway",
- "ref": "bridge_aerialway_casing",
- "style": {
- "line-color": "#876",
- "line-opacity": 0.5,
- "line-width": "@aerialway_width"
- },
- "style.night": {
- "line-color": "#876",
- "line-opacity": 0.5,
- "line-width": "@aerialway_width"
- }
- }, {
- "id": "admin_l3",
- "source": "mapbox",
- "source-layer": "admin",
- "filter": { "admin_level": [3, 4, 5] },
- "render": {
- "line-join": "round"
- },
- "style": {
- "line-color": "#88a",
- "line-dasharray": [60, 20],
- "line-opacity": {
- "stops": [[3, 0], [5, 1]]
- },
- "line-width": "@admin_l3_width"
- },
- "style.night": {
- "line-color": "@admin_night",
- "line-dasharray": [60, 20],
- "line-opacity": {
- "stops": [[3, 0], [5, 1]]
- },
- "line-width": "@admin_l3_width"
- },
- "type": "line"
- }, {
- "id": "admin_l2",
- "source": "mapbox",
- "source-layer": "admin",
- "filter": { "admin_level": 2 },
- "render": {
- "line-join": "round",
- "line-cap": "round"
- },
- "style": {
- "line-color": "#88a",
- "line-width": "@admin_l2_width"
- },
- "style.night": {
- "line-color": "@admin_night",
- "line-width": "@admin_l2_width"
- },
- "type": "line"
- }, {
- "id": "admin_maritime_cover",
- "source": "mapbox",
- "source-layer": "admin",
- "filter": { "maritime": 1 },
- "render": {
- "line-join": "round",
- "line-cap": "round"
- },
- "style": {
- "line-color": "@water",
- "line-width": 5
- },
- "style.night": {
- "line-color": "@water_night",
- "line-width": 5
- },
- "type": "line"
- }, {
- "id": "admin_maritime",
- "ref": "admin_maritime_cover",
- "style": {
- "line-color": "#c0d6d6",
- "line-width": {
- "stops": [[5, 1], [7, 2], [11, 3]]
- }
- },
- "style.night": {
- "line-color": "#0a1347",
- "line-width": {
- "stops": [[5, 1], [7, 2], [11, 3]]
- }
- }
- }, {
- "id": "country_label_line",
- "source": "mapbox",
- "source-layer": "country_label_line",
- "render": {
- "text-max-width": 5
- },
- "style": {
- "line-color": "@country_text",
- "line-width": 0.5,
- "line-opacity": 0.5
- },
- "style.night": {
- "line-color": "@text_night",
- "line-width": 0.5,
- "line-opacity": 0.5
- },
- "type": "line"
- }, {
- "id": "country_label",
- "source": "mapbox",
- "source-layer": "country_label",
- "filter": { "$type": "Point" },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold, Arial Unicode MS Bold",
- "text-max-size": 24,
- "text-max-width": 5
- },
- "style": {
- "text-color": "@country_text",
- "text-halo-color": "rgba(255,255,255,0.5)",
- "text-halo-width": {
- "stops": [[0, 1.17], [11, 2]]
- },
- "text-size": "@country_label_size"
- },
- "style.night": {
- "text-color": "@text_night",
- "text-halo-color": "@text2_stroke_night",
- "text-halo-width": {
- "stops": [[0, 1.63], [11, 2.8]]
- },
- "text-size": "@country_label_size"
- },
- "type": "symbol"
- }, {
- "id": "marine_label_line_1",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": { "$type": "LineString", "labelrank": 1 },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 30,
- "text-max-angle": 28.65,
- "text-letter-spacing": 0.4,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@marine_text",
- "text-size": {
- "stops": [[2, 20], [3, 25], [4, 30], [21, 30]]
- },
- "text-halo-color": "@water"
- },
- "style.night": {
- "text-color": "@water_dark_night",
- "text-size": {
- "stops": [[2, 20], [3, 25], [4, 30], [21, 30]]
- },
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "marine_label_line_2",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": { "$type": "LineString", "labelrank": 2 },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 24,
- "text-max-angle": 28.65,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@marine_text",
- "text-size": {
- "stops": [[2, 13], [3, 14], [4, 20], [5, 24], [21, 24]]
- },
- "text-halo-color": "@water"
- },
- "style.night": {
- "text-color": "@water_dark_night",
- "text-size": {
- "stops": [[2, 13], [3, 14], [4, 20], [5, 24], [21, 24]]
- },
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "marine_label_line_3",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": { "$type": "LineString", "labelrank": 3 },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 18,
- "text-max-angle": 28.65,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@marine_text",
- "text-size": {
- "stops": [[2, 12], [3, 13], [4, 15], [5, 18], [21, 18]]
- },
- "text-halo-color": "@water"
- },
- "style.night": {
- "text-color": "@water_dark_night",
- "text-size": {
- "stops": [[2, 12], [3, 13], [4, 15], [5, 18], [21, 18]]
- },
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "marine_label_line_other",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": { "$type": "LineString", "labelrank": [4, 5, 6] },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 16,
- "text-max-angle": 28.65,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@marine_text",
- "text-size": {
- "stops": [[3, 12], [4, 14], [5, 16], [21, 16]]
- },
- "text-halo-color": "@water"
- },
- "style.night": {
- "text-color": "@water_dark_night",
- "text-size": {
- "stops": [[3, 12], [4, 14], [5, 16], [21, 16]]
- },
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "marine_label_point_1",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": { "$type": "Point", "labelrank": 1 },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 30,
- "text-max-width": 8,
- "text-letter-spacing": 0.4,
- "text-line-height": 2
- },
- "style": {
- "text-color": "@marine_text",
- "text-size": {
- "stops": [[2, 20], [3, 25], [4, 30], [21, 30]]
- },
- "text-halo-color": "@water"
- },
- "style.night": {
- "text-color": "@water_dark_night",
- "text-size": {
- "stops": [[2, 20], [3, 25], [4, 30], [21, 30]]
- },
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "marine_label_point_2",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": { "$type": "Point", "labelrank": 2 },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 24,
- "text-max-width": 8,
- "text-letter-spacing": 0.2,
- "text-line-height": 1.5
- },
- "style": {
- "text-color": "@marine_text",
- "text-size": {
- "stops": [[2, 13], [3, 14], [4, 20], [5, 24], [21, 24]]
- },
- "text-halo-color": "@water"
- },
- "style.night": {
- "text-color": "@water_dark_night",
- "text-size": {
- "stops": [[2, 13], [3, 14], [4, 20], [5, 24], [21, 24]]
- },
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "marine_label_point_3",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": { "$type": "Point", "labelrank": 3 },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 18,
- "text-max-width": 8,
- "text-letter-spacing": 0.1,
- "text-line-height": 1.3
- },
- "style": {
- "text-color": "@marine_text",
- "text-size": {
- "stops": [[2, 12], [3, 13], [4, 15], [5, 18], [21, 18]]
- },
- "text-halo-color": "@water"
- },
- "style.night": {
- "text-color": "@water_dark_night",
- "text-size": {
- "stops": [[2, 12], [3, 13], [4, 15], [5, 18], [21, 18]]
- },
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "marine_label_point_other",
- "source": "mapbox",
- "source-layer": "marine_label",
- "filter": { "$type": "Point", "labelrank": [4, 5, 6] },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 16,
- "text-max-width": 8,
- "text-letter-spacing": 0.1,
- "text-line-height": 1.2
- },
- "style": {
- "text-color": "@marine_text",
- "text-size": {
- "stops": [[3, 12], [4, 14], [5, 16], [21, 16]]
- },
- "text-halo-color": "@water"
- },
- "style.night": {
- "text-color": "@water_dark_night",
- "text-size": {
- "stops": [[3, 12], [4, 14], [5, 16], [21, 16]]
- },
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "state_label",
- "source": "mapbox",
- "source-layer": "state_label",
- "filter": { "$type": "Point" },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Regular, Arial Unicode MS Regular",
- "text-max-size": 16,
- "text-max-width": 8
- },
- "style": {
- "text-color": "#333",
- "text-halo-width": {
- "stops": [[2.99, 0], [3, 1.17], [8.99, 1.87], [9, 0]]
- },
- "text-halo-color": "rgba(244,239,225,0.8)",
- "text-size": {
- "stops": [[2.99, 0], [3, 10], [8.99, 16], [9, 0]]
- }
- },
- "style.night": {
- "text-color": "#fff",
- "text-halo-width": {
- "stops": [[2.99, 0], [3, 1.17], [8.99, 1.87], [9, 0]]
- },
- "text-halo-color": "@land_night",
- "text-size": {
- "stops": [[2.99, 0], [3, 10], [8.99, 16], [9, 0]]
- }
- },
- "type": "symbol"
- }, {
- "id": "place_label_city",
- "source": "mapbox",
- "source-layer": "place_label",
- "filter": { "type": "city", "$type": "Point" },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold, Arial Unicode MS Bold",
- "text-max-size": 20,
- "text-max-width": 8
- },
- "style": {
- "text-color": "#444",
- "text-halo-width": {
- "stops": [[2.99, 0], [3, 1.17], [6, 1.63], [13.99, 2.33], [14, 0]]
- },
- "text-halo-color": "@text_stroke",
- "text-size": {
- "stops": [[2.99, 0], [3, 10], [6, 14], [13.99, 20], [14, 0]]
- }
- },
- "style.night": {
- "text-color": "#fff",
- "text-halo-width": {
- "stops": [[2.99, 0], [3, 1.17], [6, 1.63], [13.99, 2.33], [14, 0]]
- },
- "text-halo-color": "@text2_stroke_night",
- "text-size": {
- "stops": [[2.99, 0], [3, 10], [6, 14], [13.99, 20], [14, 0]]
- }
- },
- "type": "symbol"
- }, {
- "id": "place_label_town",
- "source": "mapbox",
- "source-layer": "place_label",
- "filter": { "type": "town", "$type": "Point" },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold, Arial Unicode MS Bold",
- "text-max-size": 24,
- "text-max-width": 8
- },
- "style": {
- "text-color": "#716656",
- "text-halo-width": {
- "stops": [[8, 1.5], [11, 1.95], [13, 2.55], [15, 3.3]]
- },
- "text-halo-color": "@text_stroke",
- "text-size": {
- "stops": [[8, 10], [11, 13], [13, 17], [15, 22]]
- }
- },
- "style.night": {
- "text-color": "@text_night",
- "text-halo-width": {
- "stops": [[8, 1.5], [11, 1.95], [13, 2.55], [15, 3.3]]
- },
- "text-halo-color": "@text2_stroke_night",
- "text-size": {
- "stops": [[8, 10], [11, 13], [13, 17], [15, 22]]
- }
- },
- "type": "symbol"
- }, {
- "id": "place_label_village",
- "source": "mapbox",
- "source-layer": "place_label",
- "filter": { "type": "village", "$type": "Point" },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold, Arial Unicode MS Bold",
- "text-max-size": 22,
- "text-max-width": 8
- },
- "style": {
- "text-color": "#635644",
- "text-halo-width": {
- "stops": [[8, 1.2], [11, 1.5], [13, 2.1], [15, 2.4], [16, 3]]
- },
- "text-halo-color": "@text_stroke",
- "text-size": {
- "stops": [[8, 8], [11, 10], [13, 14], [15, 16], [16, 20]]
- }
- },
- "style.night": {
- "text-color": "@text_night",
- "text-halo-width": {
- "stops": [[8, 1.2], [11, 1.5], [13, 2.1], [15, 2.4], [16, 3]]
- },
- "text-halo-color": "@text2_stroke_night",
- "text-size": {
- "stops": [[8, 8], [11, 10], [13, 14], [15, 16], [16, 20]]
- }
- },
- "type": "symbol"
- }, {
- "id": "place_label_other",
- "source": "mapbox",
- "source-layer": "place_label",
- "filter": { "type": ["hamlet", "suburb", "neighbourhood"], "$type": "Point" },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold, Arial Unicode MS Bold",
- "text-max-size": 18,
- "text-max-width": 6
- },
- "style": {
- "text-color": "#7d6c55",
- "text-halo-color": "@text_stroke",
- "text-size": {
- "stops": [[12, 11], [13, 12], [15, 14], [17, 18]]
- }
- },
- "style.night": {
- "text-color": "@text_night",
- "text-halo-color": "@text2_stroke_night",
- "text-halo-width": {
- "stops": [[12, 1.65], [13, 1.8], [15, 2.1], [17, 2.7]]
- },
- "text-size": {
- "stops": [[12, 11], [13, 12], [15, 14], [17, 18]]
- }
- },
- "type": "symbol"
- }, {
- "id": "road_label_1",
- "source": "mapbox",
- "source-layer": "road_label",
- "filter": { "class": ["motorway", "main"], "$type": "LineString" },
- "render": {
- "text-field": "{name_en}",
- "text-padding": 2,
- "text-font": "Open Sans Regular, Arial Unicode MS Regular",
- "text-max-size": 18,
- "text-max-angle": 28.65,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "#585042",
- "text-halo-color": "@land",
- "text-halo-width": {
- "stops": [[12, 0.55], [13, 0.6], [14, 0.65], [15, 0.7], [16, 0.8], [17, 0.9]]
- },
- "text-size": "@road_label_1_size"
- },
- "style.night": {
- "text-color": "@text_night",
- "text-halo-color": "@text2_stroke_night",
- "text-halo-width": {
- "stops": [[12, 0.92], [13, 1], [14, 1.08], [15, 1.17], [16, 1.33], [17, 1.5]]
- },
- "text-size": "@road_label_1_size"
- },
- "type": "symbol"
- }, {
- "id": "road_label_2",
- "source": "mapbox",
- "source-layer": "road_label",
- "filter": { "class": ["street", "street_limited"], "$type": "LineString" },
- "render": {
- "text-field": "{name_en}",
- "text-padding": 2,
- "text-font": "Open Sans Regular, Arial Unicode MS Regular",
- "text-max-size": 16,
- "text-max-angle": 28.65,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "#585042",
- "text-halo-color": "@land",
- "text-halo-width": {
- "stops": [[12, 0.55], [13, 0.6], [15, 0.7], [17, 0.8]]
- },
- "text-size": "@road_label_2_size"
- },
- "style.night": {
- "text-color": "@text_night",
- "text-halo-color": "@text2_stroke_night",
- "text-halo-width": {
- "stops": [[12, 0.92], [13, 1], [15, 1.17], [17, 1.33]]
- },
- "text-size": "@road_label_2_size"
- },
- "type": "symbol"
- }, {
- "id": "road_label_3",
- "source": "mapbox",
- "source-layer": "road_label",
- "filter": { "class": ["service", "driveway", "path"], "$type": "LineString" },
- "render": {
- "text-field": "{name_en}",
- "text-padding": 2,
- "text-font": "Open Sans Regular, Arial Unicode MS Regular",
- "text-max-size": 14,
- "text-max-angle": 28.65,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "#585042",
- "text-halo-color": "@land",
- "text-halo-width": {
- "stops": [[14, 0.5], [15, 0.6], [17, 0.7]]
- },
- "text-size": "@road_label_3_size"
- },
- "style.night": {
- "text-color": "@text_night",
- "text-halo-color": "@text2_stroke_night",
- "text-halo-width": {
- "stops": [[14, 0.83], [15, 1], [17, 1.17]]
- },
- "text-size": "@road_label_3_size"
- },
- "type": "symbol"
- }, {
- "id": "contour_label",
- "source": "mapbox",
- "source-layer": "contour",
- "filter": { "index": [5, 10], "$type": "LineString" },
- "render": {
- "text-field": "{ele} m",
- "text-font": "Open Sans Regular, Arial Unicode MS Regular",
- "text-max-size": 10,
- "text-max-angle": 28.65,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@text",
- "text-halo-color": "@land",
- "text-halo-width": 1.5,
- "text-size": 10
- },
- "style.night": {
- "text-color": "@contour_night",
- "text-halo-color": "@land_night",
- "text-halo-width": 1.5,
- "text-size": 10
- },
- "type": "symbol"
- }, {
- "id": "water_label",
- "source": "mapbox",
- "source-layer": "water_label",
- "filter": { "$type": "Point" },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 12,
- "text-max-width": 8
- },
- "style": {
- "text-color": "@water_dark",
- "text-halo-color": "rgba(255,255,255,0.75)"
- },
- "style.night": {
- "text-color": "@text_water_night",
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "waterway_label",
- "source": "mapbox",
- "source-layer": "waterway_label",
- "filter": { "$type": "LineString" },
- "render": {
- "text-field": "{name_en}",
- "text-font": "Open Sans Semibold Italic, Arial Unicode MS Bold",
- "text-max-size": 12,
- "text-max-angle": 28.65,
- "symbol-placement": "line"
- },
- "style": {
- "text-color": "@water_dark",
- "text-halo-width": 1.4,
- "text-halo-color": "@text_stroke"
- },
- "style.night": {
- "text-color": "@text_water_night",
- "text-halo-color": "@water_night"
- },
- "type": "symbol"
- }, {
- "id": "poi_label_1-2",
- "source": "mapbox",
- "source-layer": "poi_label",
- "filter": { "scalerank": [1, 2], "$type": "Point" },
- "render": {
- "icon-image": "{maki}-12",
- "text-field": "{name_en}",
- "text-padding": 2,
- "text-font": "Open Sans Semibold, Arial Unicode MS Bold",
- "text-max-size": 12,
- "text-max-width": 10,
- "text-offset": [0, 0.6],
- "text-vertical-align": "top"
- },
- "style": {
- "text-color": "#444",
- "text-size": "@poi_label_1-2_size",
- "text-halo-color": "@land",
- "text-halo-width": {
- "stops": [[14, 1.5], [15, 1.65], [16, 1.8]]
- }
- },
- "style.night": {
- "text-color": "#fff",
- "text-size": "@poi_label_1-2_size",
- "text-halo-color": "@text2_stroke_night",
- "text-halo-width": {
- "stops": [[14, 1.5], [15, 1.65], [16, 1.8]]
- }
- },
- "type": "symbol"
- }, {
- "id": "poi_label_3",
- "source": "mapbox",
- "source-layer": "poi_label",
- "filter": { "scalerank": 3, "$type": "Point" },
- "render": {
- "icon-image": "{maki}-12",
- "text-field": "{name_en}",
- "text-padding": 2,
- "text-font": "Open Sans Semibold, Arial Unicode MS Bold",
- "text-max-size": 11,
- "text-max-width": 10,
- "text-offset": [0, 0.6],
- "text-vertical-align": "top"
- },
- "style": {
- "icon-opacity": {
- "stops": [[15.5, 0], [15.75, 1]]
- },
- "text-color": "#444",
- "text-size": "@poi_label_3_size",
- "text-halo-color": "@land",
- "text-halo-width": {
- "stops": [[15, 1.5], [16, 1.65]]
- },
- "text-opacity": {
- "stops": [[15.5, 0], [15.75, 1]]
- }
- },
- "style.night": {
- "text-color": "#fff",
- "text-size": "@poi_label_3_size",
- "text-halo-color": "@text2_stroke_night",
- "text-halo-width": {
- "stops": [[15, 1.5], [16, 1.65]]
- },
- "text-opacity": {
- "stops": [[15.5, 0], [15.75, 1]]
- }
- },
- "type": "symbol"
- }, {
- "id": "poi_label_4",
- "source": "mapbox",
- "source-layer": "poi_label",
- "filter": { "scalerank": 4, "$type": "Point" },
- "render": {
- "icon-image": "{maki}-12",
- "text-field": "{name_en}",
- "text-padding": 2,
- "text-font": "Open Sans Semibold, Arial Unicode MS Bold",
- "text-max-size": 10,
- "text-max-width": 10,
- "text-offset": [0, 0.6],
- "text-vertical-align": "top"
- },
- "style": {
- "icon-opacity": {
- "stops": [[17.5, 0], [17.75, 1]]
- },
- "text-color": "#444",
- "text-size": 10,
- "text-opacity": {
- "stops": [[17.5, 0], [17.75, 1]]
- },
- "text-halo-color": "@land",
- "text-halo-width": 1.5
- },
- "style.night": {
- "text-color": "#fff",
- "text-size": 10,
- "text-opacity": {
- "stops": [[17.5, 0], [17.75, 1]]
- },
- "text-halo-color": "@text2_stroke_night",
- "text-halo-width": 1.5
- },
- "type": "symbol"
- }]
-}
diff --git a/test/fixtures/fixture_request.cpp b/test/fixtures/fixture_request.cpp
index f3b41681a6..cc01760ae1 100644
--- a/test/fixtures/fixture_request.cpp
+++ b/test/fixtures/fixture_request.cpp
@@ -16,7 +16,7 @@ const std::string base_directory = []{
fn.erase(fn.find_last_of("/"));
fn.erase(fn.find_last_of("/"));
fn.erase(fn.find_last_of("/"));
- return fn + "/node_modules/mapbox-gl-test-suite/";
+ return fn + "/test/suite/";
}();
namespace mbgl {
diff --git a/test/headless.cpp b/test/headless.cpp
index e1bdbdc061..4605d7f288 100644
--- a/test/headless.cpp
+++ b/test/headless.cpp
@@ -20,7 +20,7 @@ const std::string base_directory = []{
std::string fn = __FILE__;
fn.erase(fn.find_last_of("/"));
fn.erase(fn.find_last_of("/"));
- return fn + "/node_modules/mapbox-gl-test-suite/";
+ return fn + "/test/suite/";
}();
auto display_ = std::make_shared<mbgl::HeadlessDisplay>();
@@ -92,13 +92,25 @@ TEST_P(HeadlessTest, render) {
map.setLonLatZoom(longitude, latitude, zoom);
map.setBearing(bearing);
+
// Run the loop. It will terminate when we don't have any further listeners.
map.run();
const unsigned int w = width * pixelRatio;
const unsigned int h = height * pixelRatio;
- const std::string image = util::compress_png(w, h, view.readPixels().get(), true);
+ auto pixels = view.readPixels();
+
+ const int stride = w * 4;
+ auto tmp = std::unique_ptr<char[]>(new char[stride]());
+ char *rgba = reinterpret_cast<char *>(pixels.get());
+ for (int i = 0, j = height - 1; i < j; i++, j--) {
+ memcpy(tmp.get(), rgba + i * stride, stride);
+ memcpy(rgba + i * stride, rgba + j * stride, stride);
+ memcpy(rgba + j * stride, tmp.get(), stride);
+ }
+
+ const std::string image = util::compress_png(w, h, pixels.get());
util::write_file(actual_image, image);
}
}
diff --git a/test/suite b/test/suite
new file mode 160000
+Subproject 1651a3df444ff83c98f6eff00679d6b84dc8845
diff --git a/test/test.gyp b/test/test.gyp
index f227dd5f54..8ae475d1c1 100644
--- a/test/test.gyp
+++ b/test/test.gyp
@@ -8,7 +8,7 @@
'<@(uv_ldflags)',
'<@(sqlite3_ldflags)',
'<@(curl_ldflags)',
- '<@(png_ldflags)'
+ '<@(png_ldflags)',
],
},
'targets': [
@@ -77,8 +77,7 @@
],
'dependencies': [
'../deps/gtest/gtest.gyp:gtest',
- '../mapboxgl.gyp:mbgl-standalone',
- '../mapboxgl.gyp:copy_fixtures',
+ '../mapboxgl.gyp:mbgl-standalone'
],
'conditions': [
['OS == "mac"', { 'xcode_settings': { 'OTHER_LDFLAGS': [ '<@(ldflags)' ] }