diff options
Diffstat (limited to 'src/mbgl')
-rw-r--r-- | src/mbgl/storage/resource.cpp | 4 | ||||
-rw-r--r-- | src/mbgl/tile/tile_loader_impl.hpp | 3 |
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()) { |