我设法在地图上绘制了一个多边形。我使用的代码:
private void drawPolygons() {
PolygonOptions polygonOptions = new PolygonOptions();
polygonOptions.addAll(arrayPolygon);
polygonOptions.strokeColor(Color.CYAN);
polygonOptions.strokeWidth(4);
polygonOptions.fillColor(Color.CYAN);
Polygon polygon = googleMap.addPolygon(polygonOptions);
}
我正在尝试画另一个。我这样尝试过:
private void drawPolygons() {
PolygonOptions polygonOptions = new PolygonOptions();
polygonOptions.addAll(arrayPolygon);
polygonOptions.addAll(arrayPolygonSecond);
polygonOptions.strokeColor(Color.CYAN);
polygonOptions.strokeWidth(4);
polygonOptions.fillColor(Color.CYAN);
Polygon polygon = googleMap.addPolygon(polygonOptions);
}
这两个LatLng阵列刚刚搞砸(两个阵列的顶点都已连接)。我需要将这两个多边形分开。
任何帮助将不胜感激。谢谢你。
找到了解决方案。我必须做两个分开的功能。这是代码:
private void drawPolygons() {
PolygonOptions polygonOptions = new PolygonOptions();
polygonOptions.addAll(arrayPolygonOne);
polygonOptions.strokeColor(Color.CYAN);
polygonOptions.strokeWidth(4);
polygonOptions.fillColor(Color.CYAN);
Polygon polygon = googleMap.addPolygon(polygonOptions);
}
private void drawPolygonsOne() {
PolygonOptions polygonOptions = new PolygonOptions();
polygonOptions.addAll(arrayPolygonOne);
polygonOptions.strokeColor(Color.CYAN);
polygonOptions.strokeWidth(4);
polygonOptions.fillColor(Color.CYAN);
Polygon polygon = googleMap.addPolygon(polygonOptions);
}
此代码,dinamyc绘制了多个多边形区域,
List<LatLng> allArea;
for(HeadArea area : data.getListHeadAreas()){
allArea = new ArrayList<>();
for(DetailArea detailArea : area.getDetailAreas()){
allArea.add(new LatLng(detailArea.getLatitude(), detailArea.getLongitude()));
}
mMap.addPolygon(new PolygonOptions()
.addAll(PolyUtil.simplify(allArea, 3))
.fillColor(Color.RED)
.strokeColor(Color.BLUE)
.strokeWidth(3));
}