地图上的多个多边形

问题描述 投票:0回答:2

我设法在地图上绘制了一个多边形。我使用的代码:

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阵列刚刚搞砸(两个阵列的顶点都已连接)。我需要将这两个多边形分开。

任何帮助将不胜感激。谢谢你。

android google-maps gps google-maps-android-api-2
2个回答
1
投票

找到了解决方案。我必须做两个分开的功能。这是代码:

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);

}

0
投票

此代码,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));
  }
© www.soinside.com 2019 - 2024. All rights reserved.