summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/painter_background.cpp
diff options
context:
space:
mode:
authorAnsis Brammanis <brammanis@gmail.com>2016-03-30 17:45:20 -0700
committerAnsis Brammanis <brammanis@gmail.com>2016-03-30 18:53:44 -0700
commit273600c16e51e5442ab4414f650084ea878594f8 (patch)
treec67092c09b486f830a7ae15bb6c6142528ea4798 /src/mbgl/renderer/painter_background.cpp
parent5eda74a514964d1cac684483bafa08d458175f9a (diff)
downloadqtlocation-mapboxgl-273600c16e51e5442ab4414f650084ea878594f8.tar.gz
[core] simplify conversions from pixels to tile units
fix #3768
Diffstat (limited to 'src/mbgl/renderer/painter_background.cpp')
-rw-r--r--src/mbgl/renderer/painter_background.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/mbgl/renderer/painter_background.cpp b/src/mbgl/renderer/painter_background.cpp
index fbca8b59f7..5de7857bd2 100644
--- a/src/mbgl/renderer/painter_background.cpp
+++ b/src/mbgl/renderer/painter_background.cpp
@@ -63,7 +63,6 @@ void Painter::renderBackground(const BackgroundLayer& layer) {
if (isPatterned) {
patternShader->u_matrix = vtxMatrix;
- const float factor = util::EXTENT / util::tileSize;
std::array<int, 2> imageSizeScaledA = {{
(int)((*imagePosA).size[0] * properties.pattern.value.fromScale),
@@ -75,12 +74,12 @@ void Painter::renderBackground(const BackgroundLayer& layer) {
}};
patternShader->u_patternscale_a = {{
- 1.0f / (factor * imageSizeScaledA[0]),
- 1.0f / (factor * imageSizeScaledA[1])
+ 1.0f / id.pixelsToTileUnits(imageSizeScaledA[0], state.getIntegerZoom()),
+ 1.0f / id.pixelsToTileUnits(imageSizeScaledA[1], state.getIntegerZoom())
}};
patternShader->u_patternscale_b = {{
- 1.0f / (factor * imageSizeScaledB[0]),
- 1.0f / (factor * imageSizeScaledB[1])
+ 1.0f / id.pixelsToTileUnits(imageSizeScaledB[0], state.getIntegerZoom()),
+ 1.0f / id.pixelsToTileUnits(imageSizeScaledB[1], state.getIntegerZoom())
}};
float offsetAx = (std::fmod(util::tileSize, imageSizeScaledA[0]) * id.x) / (float)imageSizeScaledA[0];