diff options
author | Tobrun <tobrun.van.nuland@gmail.com> | 2017-03-06 16:05:39 -0800 |
---|---|---|
committer | Antonio Zugaldia <antonio@mapbox.com> | 2017-03-10 09:37:00 -0800 |
commit | ed16a7d63289e1414ab1a21de1a7d367a0dc8fb3 (patch) | |
tree | 2f19286add065e5ebc688981df8b245af7408d48 /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java | |
parent | 2581af3cb69f087b2c64bdf45c7802b5106e1df5 (diff) | |
download | qtlocation-mapboxgl-ed16a7d63289e1414ab1a21de1a7d367a0dc8fb3.tar.gz |
[android] - zoom to rounded levels
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java index 0f6b146907..2a81ad6752 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java @@ -182,13 +182,17 @@ final class Transform implements MapView.OnMapChangedListener { // Cancel any animation cancelTransitions(); - if (zoomIn) { - mapView.scaleBy(2.0, x, y, MapboxConstants.ANIMATION_DURATION); - } else { - mapView.scaleBy(0.5, x, y, MapboxConstants.ANIMATION_DURATION); + CameraPosition cameraPosition = invalidateCameraPosition(); + if (cameraPosition != null) { + zoom(cameraPosition, zoomIn, x, y); } } + private void zoom(@NonNull CameraPosition cameraPosition, boolean zoomIn, float x, float y) { + int newZoom = (int) Math.round(cameraPosition.zoom + (zoomIn ? 1 : -1)); + mapView.setZoom(newZoom, x, y, MapboxConstants.ANIMATION_DURATION); + } + void setZoom(double zoom) { mapView.setZoom(zoom); } |