Remove crosshair from map
This commit is contained in:
parent
8a29b93533
commit
688341e072
@ -3,14 +3,6 @@ package com.uam.wmi.findmytutor.utils;
|
|||||||
import android.animation.TypeEvaluator;
|
import android.animation.TypeEvaluator;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import android.content.res.AssetManager;
|
|
||||||
|
|
||||||
import android.graphics.Color;
|
|
||||||
import android.view.Gravity;
|
|
||||||
import android.view.View;
|
|
||||||
import android.widget.FrameLayout;
|
|
||||||
|
|
||||||
|
|
||||||
import com.mapbox.mapboxsdk.annotations.Polygon;
|
import com.mapbox.mapboxsdk.annotations.Polygon;
|
||||||
import com.mapbox.mapboxsdk.annotations.PolygonOptions;
|
import com.mapbox.mapboxsdk.annotations.PolygonOptions;
|
||||||
import com.mapbox.mapboxsdk.camera.CameraPosition;
|
import com.mapbox.mapboxsdk.camera.CameraPosition;
|
||||||
@ -19,8 +11,6 @@ import com.mapbox.mapboxsdk.geometry.LatLng;
|
|||||||
import com.mapbox.mapboxsdk.geometry.LatLngBounds;
|
import com.mapbox.mapboxsdk.geometry.LatLngBounds;
|
||||||
import com.mapbox.mapboxsdk.maps.MapView;
|
import com.mapbox.mapboxsdk.maps.MapView;
|
||||||
import com.mapbox.mapboxsdk.maps.MapboxMap;
|
import com.mapbox.mapboxsdk.maps.MapboxMap;
|
||||||
import com.mapbox.mapboxsdk.style.layers.FillLayer;
|
|
||||||
import com.mapbox.mapboxsdk.style.layers.Layer;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
@ -38,11 +28,9 @@ public class mapUtils {
|
|||||||
.add(WMI_BOUNDS.getNorthEast())
|
.add(WMI_BOUNDS.getNorthEast())
|
||||||
.add(WMI_BOUNDS.getSouthEast())
|
.add(WMI_BOUNDS.getSouthEast())
|
||||||
.add(WMI_BOUNDS.getSouthWest())
|
.add(WMI_BOUNDS.getSouthWest())
|
||||||
.alpha(0.1f)
|
.alpha(0.0f);
|
||||||
.fillColor(Color.YELLOW);
|
|
||||||
// For adding and removing
|
// For adding and removing
|
||||||
private static Polygon polygon;
|
private static Polygon polygon;
|
||||||
private static View crosshair;
|
|
||||||
|
|
||||||
// Map Bounds Area
|
// Map Bounds Area
|
||||||
public static void setMapBoundsArea(Context context, MapboxMap mapboxMap, MapView mapView, Boolean check) {
|
public static void setMapBoundsArea(Context context, MapboxMap mapboxMap, MapView mapView, Boolean check) {
|
||||||
@ -50,28 +38,22 @@ public class mapUtils {
|
|||||||
if (check) {
|
if (check) {
|
||||||
// Set bounds to WMI
|
// Set bounds to WMI
|
||||||
mapboxMap.setLatLngBoundsForCameraTarget(WMI_BOUNDS);
|
mapboxMap.setLatLngBoundsForCameraTarget(WMI_BOUNDS);
|
||||||
makeNewCamera(mapboxMap, 52.466799, 16.927002, 17, 0, 0,4000);
|
makeNewCamera(mapboxMap, 52.466799, 16.927002, 17, 0, 0, 4000);
|
||||||
mapboxMap.setMinZoomPreference(16); // TODO export to map config
|
mapboxMap.setMinZoomPreference(16); // TODO export to map config
|
||||||
|
|
||||||
// Visualise bounds area
|
// Visualise bounds area
|
||||||
// showBoundsArea
|
// showBoundsArea
|
||||||
polygon = mapboxMap.addPolygon(boundsArea);
|
polygon = mapboxMap.addPolygon(boundsArea);
|
||||||
// showCrosshair
|
|
||||||
crosshair = new View(context);
|
|
||||||
crosshair.setLayoutParams(new FrameLayout.LayoutParams(15, 15, Gravity.CENTER));
|
|
||||||
crosshair.setBackgroundColor(Color.GREEN);
|
|
||||||
mapView.addView(crosshair);
|
|
||||||
} else {
|
} else {
|
||||||
mapboxMap.setLatLngBoundsForCameraTarget(null);
|
mapboxMap.setLatLngBoundsForCameraTarget(null);
|
||||||
mapboxMap.setMinZoomPreference(2);
|
mapboxMap.setMinZoomPreference(2);
|
||||||
mapboxMap.removePolygon(polygon);
|
mapboxMap.removePolygon(polygon);
|
||||||
mapView.removeView(crosshair);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void makeNewCamera(MapboxMap mapboxMap, double lat, double lon, int zoomParam, int bearingParam, int tiltParam, int duration){
|
public static void makeNewCamera(MapboxMap mapboxMap, double lat, double lon, int zoomParam, int bearingParam, int tiltParam, int duration) {
|
||||||
CameraPosition position = new CameraPosition.Builder()
|
CameraPosition position = new CameraPosition.Builder()
|
||||||
.target(new LatLng(lat, lon)) // Sets the new camera position
|
.target(new LatLng(lat, lon)) // Sets the new camera position
|
||||||
.zoom(zoomParam) // Sets the zoom
|
.zoom(zoomParam) // Sets the zoom
|
||||||
@ -83,22 +65,6 @@ public class mapUtils {
|
|||||||
.newCameraPosition(position), duration);
|
.newCameraPosition(position), duration);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Function for marker animation
|
|
||||||
public static class LatLngEvaluator implements TypeEvaluator<LatLng> {
|
|
||||||
// Method is used to interpolate the marker animation.
|
|
||||||
|
|
||||||
private LatLng latLng = new LatLng();
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public LatLng evaluate(float fraction, LatLng startValue, LatLng endValue) {
|
|
||||||
latLng.setLatitude(startValue.getLatitude()
|
|
||||||
+ ((endValue.getLatitude() - startValue.getLatitude()) * fraction));
|
|
||||||
latLng.setLongitude(startValue.getLongitude()
|
|
||||||
+ ((endValue.getLongitude() - startValue.getLongitude()) * fraction));
|
|
||||||
return latLng;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// read file to JSON
|
// read file to JSON
|
||||||
public static String loadJsonFromAsset(Context context, String filename) {
|
public static String loadJsonFromAsset(Context context, String filename) {
|
||||||
// Using this method to load in GeoJSON files from the assets folder.
|
// Using this method to load in GeoJSON files from the assets folder.
|
||||||
@ -116,4 +82,20 @@ public class mapUtils {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Function for marker animation
|
||||||
|
public static class LatLngEvaluator implements TypeEvaluator<LatLng> {
|
||||||
|
// Method is used to interpolate the marker animation.
|
||||||
|
|
||||||
|
private LatLng latLng = new LatLng();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public LatLng evaluate(float fraction, LatLng startValue, LatLng endValue) {
|
||||||
|
latLng.setLatitude(startValue.getLatitude()
|
||||||
|
+ ((endValue.getLatitude() - startValue.getLatitude()) * fraction));
|
||||||
|
latLng.setLongitude(startValue.getLongitude()
|
||||||
|
+ ((endValue.getLongitude() - startValue.getLongitude()) * fraction));
|
||||||
|
return latLng;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user