summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk
diff options
context:
space:
mode:
authorPablo Guardiola <guardiola31337@gmail.com>2017-04-11 19:10:46 +0200
committerGitHub <noreply@github.com>2017-04-11 19:10:46 +0200
commitb71d86599d5e7c265b320300b18cfc0ea082c6d2 (patch)
treec5e45f36dc6fd4fcaaf57799a81b131805804913 /platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk
parent1d33bf774f7d0248a72529840e155c4716a99851 (diff)
downloadqtlocation-mapboxgl-b71d86599d5e7c265b320300b18cfc0ea082c6d2.tar.gz
[android] Polygon holes (#8557)
* add 1 hole support to polygon-related classes * fix no hole crash and add triangle hole shape example * add support for multiple holes
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk')
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/PolygonActivity.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/PolygonActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/PolygonActivity.java
index a2245a28e0..429509e1d2 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/PolygonActivity.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/PolygonActivity.java
@@ -6,6 +6,7 @@ import android.support.v7.app.AppCompatActivity;
import android.view.Menu;
import android.view.MenuItem;
+import com.mapbox.mapboxsdk.annotations.Hole;
import com.mapbox.mapboxsdk.annotations.Polygon;
import com.mapbox.mapboxsdk.annotations.PolygonOptions;
import com.mapbox.mapboxsdk.camera.CameraPosition;
@@ -18,6 +19,7 @@ import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapbox.mapboxsdk.testapp.R;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
import static com.mapbox.mapboxsdk.testapp.activity.annotation.PolygonActivity.Config.BLUE_COLOR;
@@ -26,6 +28,7 @@ import static com.mapbox.mapboxsdk.testapp.activity.annotation.PolygonActivity.C
import static com.mapbox.mapboxsdk.testapp.activity.annotation.PolygonActivity.Config.NO_ALPHA;
import static com.mapbox.mapboxsdk.testapp.activity.annotation.PolygonActivity.Config.PARTIAL_ALPHA;
import static com.mapbox.mapboxsdk.testapp.activity.annotation.PolygonActivity.Config.RED_COLOR;
+import static com.mapbox.mapboxsdk.testapp.activity.annotation.PolygonActivity.Config.STAR_SHAPE_HOLES;
import static com.mapbox.mapboxsdk.testapp.activity.annotation.PolygonActivity.Config.STAR_SHAPE_POINTS;
/**
@@ -44,6 +47,7 @@ public class PolygonActivity extends AppCompatActivity implements OnMapReadyCall
private boolean visible = true;
private boolean color = true;
private boolean allPoints;
+ private boolean holes;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -140,6 +144,10 @@ public class PolygonActivity extends AppCompatActivity implements OnMapReadyCall
color = !color;
polygon.setFillColor(color ? BLUE_COLOR : RED_COLOR);
return true;
+ case R.id.action_id_holes:
+ holes = !holes;
+ polygon.setHoles(holes ? STAR_SHAPE_HOLES : Collections.<Hole>emptyList());
+ return true;
default:
return super.onOptionsItemSelected(item);
}
@@ -179,5 +187,27 @@ public class PolygonActivity extends AppCompatActivity implements OnMapReadyCall
static final List<LatLng> BROKEN_SHAPE_POINTS =
STAR_SHAPE_POINTS.subList(0, STAR_SHAPE_POINTS.size() - 3);
+
+ static final List<? extends Hole> STAR_SHAPE_HOLES = new ArrayList<Hole>() {
+ {
+ add(new Hole(new ArrayList<LatLng>() {
+ {
+ add(new LatLng(45.521743, -122.669091));
+ add(new LatLng(45.530483, -122.676833));
+ add(new LatLng(45.520483, -122.676833));
+ add(new LatLng(45.521743, -122.669091));
+ }
+ }));
+ add(new Hole(new ArrayList<LatLng>() {
+ {
+ add(new LatLng(45.529743, -122.662791));
+ add(new LatLng(45.525543, -122.662791));
+ add(new LatLng(45.525543, -122.660));
+ add(new LatLng(45.527743, -122.660));
+ add(new LatLng(45.529743, -122.662791));
+ }
+ }));
+ }
+ };
}
}