From bd6e77ef7d5887a30528389382e0a74631fe2f0d Mon Sep 17 00:00:00 2001 From: tobrun Date: Tue, 21 Aug 2018 13:34:45 +0200 Subject: brb --- .../java/com/mapbox/mapboxsdk/maps/MapView.java | 45 ++++++++++++---------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java index 17ef1ef484..d480d28f26 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java @@ -37,6 +37,7 @@ import com.mapbox.mapboxsdk.camera.CameraPosition; import com.mapbox.mapboxsdk.camera.CameraUpdateFactory; import com.mapbox.mapboxsdk.constants.MapboxConstants; import com.mapbox.mapboxsdk.constants.Style; +import com.mapbox.mapboxsdk.geometry.LatLng; import com.mapbox.mapboxsdk.maps.renderer.MapRenderer; import com.mapbox.mapboxsdk.maps.renderer.glsurfaceview.GLSurfaceViewMapRenderer; import com.mapbox.mapboxsdk.maps.renderer.textureview.TextureViewMapRenderer; @@ -568,32 +569,20 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback { return; } - String styleUrl; - double minZoom, maxZoom; - CameraPosition cameraPosition; - if (definition instanceof OfflineTilePyramidRegionDefinition) { - OfflineTilePyramidRegionDefinition regionDefinition = (OfflineTilePyramidRegionDefinition) definition; - styleUrl = regionDefinition.getStyleURL(); - minZoom = regionDefinition.getMinZoom(); - maxZoom = regionDefinition.getMaxZoom(); - cameraPosition = new CameraPosition.Builder() - .target(regionDefinition.getBounds().getCenter()) - .zoom(minZoom) - .build(); + setOfflineTilePyramidRegionDefinition((OfflineTilePyramidRegionDefinition) definition); } else if (definition instanceof OfflineGeometryRegionDefinition) { - OfflineGeometryRegionDefinition regionDefinition = (OfflineGeometryRegionDefinition) definition; - styleUrl = regionDefinition.getStyleURL(); - minZoom = regionDefinition.getMinZoom(); - maxZoom = regionDefinition.getMaxZoom(); - cameraPosition = new CameraPosition.Builder() - .target(regionDefinition.getBounds().getCenter()) - .zoom(minZoom) - .build(); + setOfflineGeometryRegionDefinition((OfflineGeometryRegionDefinition) definition); } else { throw new UnsupportedOperationException("OfflineRegionDefintion instance not supported"); } + } + private void setOfflineRegionDefinition(String styleUrl, LatLng cameraTarget, double minZoom, double maxZoom) { + CameraPosition cameraPosition = new CameraPosition.Builder() + .target(cameraTarget) + .zoom(minZoom) + .build(); setStyleUrl(styleUrl); if (!isMapInitialized()) { mapboxMapOptions.camera(cameraPosition); @@ -606,6 +595,22 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback { mapboxMap.setMaxZoomPreference(maxZoom); } + private void setOfflineTilePyramidRegionDefinition(OfflineTilePyramidRegionDefinition regionDefinition) { + setOfflineRegionDefinition(regionDefinition.getStyleURL(), + regionDefinition.getBounds().getCenter(), + regionDefinition.getMinZoom(), + regionDefinition.getMaxZoom() + ); + } + + private void setOfflineGeometryRegionDefinition(OfflineGeometryRegionDefinition regionDefinition) { + setOfflineRegionDefinition(regionDefinition.getStyleURL(), + regionDefinition.getBounds().getCenter(), + regionDefinition.getMinZoom(), + regionDefinition.getMaxZoom() + ); + } + // // Rendering // -- cgit v1.2.1