summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2016-08-15 18:34:45 +0200
committerKonstantin Käfer <mail@kkaefer.com>2016-08-16 11:04:30 +0200
commit18176605f65ce90c973e0b61a1a2b563471b0ba5 (patch)
tree4570f3dd8d213c96e4591c5d989d427120f16fb6 /src
parentc34130ac6d968a3ff636af71e19893d22c2faa99 (diff)
downloadqtlocation-mapboxgl-18176605f65ce90c973e0b61a1a2b563471b0ba5.tar.gz
[core] support "scheme": "tms" in TileJSON files
Diffstat (limited to 'src')
-rw-r--r--src/mbgl/storage/resource.cpp4
-rw-r--r--src/mbgl/tile/tile_loader_impl.hpp3
2 files changed, 6 insertions, 1 deletions
diff --git a/src/mbgl/storage/resource.cpp b/src/mbgl/storage/resource.cpp
index bb587dcc33..20dde1db56 100644
--- a/src/mbgl/storage/resource.cpp
+++ b/src/mbgl/storage/resource.cpp
@@ -87,8 +87,12 @@ Resource Resource::tile(const std::string& urlTemplate,
int32_t x,
int32_t y,
int8_t z,
+ Tileset::Scheme scheme,
Necessity necessity) {
bool supportsRatio = urlTemplate.find("{ratio}") != std::string::npos;
+ if (scheme == Tileset::Scheme::TMS) {
+ y = (1 << z) - y - 1;
+ }
return Resource {
Resource::Kind::Tile,
util::replaceTokens(urlTemplate, [&](const std::string& token) {
diff --git a/src/mbgl/tile/tile_loader_impl.hpp b/src/mbgl/tile/tile_loader_impl.hpp
index b987d6ec65..9a5b35a7af 100644
--- a/src/mbgl/tile/tile_loader_impl.hpp
+++ b/src/mbgl/tile/tile_loader_impl.hpp
@@ -21,7 +21,8 @@ TileLoader<T>::TileLoader(T& tile_,
parameters.pixelRatio,
id.canonical.x,
id.canonical.y,
- id.canonical.z)),
+ id.canonical.z,
+ tileset.scheme)),
fileSource(parameters.fileSource) {
assert(!request);
if (fileSource.supportsOptionalRequests()) {