summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/mbgl/util/geo.hpp2
-rw-r--r--src/mbgl/map/transform.cpp14
-rw-r--r--src/mbgl/util/geo.cpp5
3 files changed, 7 insertions, 14 deletions
diff --git a/include/mbgl/util/geo.hpp b/include/mbgl/util/geo.hpp
index db7d9c792e..b16d51c026 100644
--- a/include/mbgl/util/geo.hpp
+++ b/include/mbgl/util/geo.hpp
@@ -138,8 +138,6 @@ struct EdgeInsets {
}
PrecisionPoint getCenter(uint16_t width, uint16_t height) const;
-
- void flip();
};
} // namespace mbgl
diff --git a/src/mbgl/map/transform.cpp b/src/mbgl/map/transform.cpp
index f7c84ff5f0..6ec387ac23 100644
--- a/src/mbgl/map/transform.cpp
+++ b/src/mbgl/map/transform.cpp
@@ -96,7 +96,6 @@ void Transform::easeTo(const CameraOptions& camera, const AnimationOptions& anim
padding = *camera.padding;
}
const LatLng startLatLng = getLatLng(padding);
- padding.flip();
const PrecisionPoint startPoint = {
state.lngX(startLatLng.longitude),
state.latY(startLatLng.latitude),
@@ -106,6 +105,8 @@ void Transform::easeTo(const CameraOptions& camera, const AnimationOptions& anim
state.lngX(latLng.longitude),
state.latY(latLng.latitude),
};
+ PrecisionPoint center = padding.getCenter(state.width, state.height);
+ center.y = state.height - center.y;
// Constrain camera options.
zoom = util::clamp(zoom, state.getMinZoom(), state.getMaxZoom());
@@ -148,7 +149,7 @@ void Transform::easeTo(const CameraOptions& camera, const AnimationOptions& anim
}
if (padding) {
- state.moveLatLng(frameLatLng, padding.getCenter(state.width, state.height));
+ state.moveLatLng(frameLatLng, center);
}
return update;
}, duration);
@@ -178,7 +179,6 @@ void Transform::flyTo(const CameraOptions &camera, const AnimationOptions &anima
padding = *camera.padding;
}
const LatLng startLatLng = getLatLng(padding);
- padding.flip();
const PrecisionPoint startPoint = {
state.lngX(startLatLng.longitude),
state.latY(startLatLng.latitude),
@@ -188,6 +188,8 @@ void Transform::flyTo(const CameraOptions &camera, const AnimationOptions &anima
state.lngX(latLng.longitude),
state.latY(latLng.latitude),
};
+ PrecisionPoint center = padding.getCenter(state.width, state.height);
+ center.y = state.height - center.y;
// Constrain camera options.
zoom = util::clamp(zoom, state.getMinZoom(), state.getMaxZoom());
@@ -321,7 +323,7 @@ void Transform::flyTo(const CameraOptions &camera, const AnimationOptions &anima
}
if (padding) {
- state.moveLatLng(frameLatLng, padding.getCenter(state.width, state.height));
+ state.moveLatLng(frameLatLng, center);
}
return Update::Zoom;
}, duration);
@@ -412,9 +414,7 @@ void Transform::setLatLngZoom(const LatLng& latLng, double zoom, const EdgeInset
LatLng Transform::getLatLng(const EdgeInsets& padding) const {
if (padding) {
- EdgeInsets flippedPadding = padding;
- flippedPadding.flip();
- return state.pointToLatLng(flippedPadding.getCenter(state.width, state.height));
+ return pointToLatLng(padding.getCenter(state.width, state.height));
} else {
return state.getLatLng();
}
diff --git a/src/mbgl/util/geo.cpp b/src/mbgl/util/geo.cpp
index a0ba44c4a9..25e795e4ef 100644
--- a/src/mbgl/util/geo.cpp
+++ b/src/mbgl/util/geo.cpp
@@ -35,9 +35,4 @@ PrecisionPoint EdgeInsets::getCenter(uint16_t width, uint16_t height) const {
};
}
-void EdgeInsets::flip() {
- std::swap(top, bottom);
- std::swap(left, right);
-}
-
} // end namespace mbgl