谷歌地图 - 缩放到多边形

时间:2018-03-29 13:39:42

标签: android google-maps zoom polygon

我检查了几个问题(this onethis onethis one) 有关将谷歌地图缩放到Android中的给定PolygonList<LatLng>,但我还没有找到答案。

功能是什么

public static int getZoomLevelForPolygon(final List<LatLng> listOfPolygonCoordinates)

看起来像?我有可能将地图缩放到某个多边形吗?

1 个答案:

答案 0 :(得分:0)

好的我觉得我设法找到了解决方案: 首先,我们生成一个可以适合多边形的最小矩形,也称为LatLngBounds对象。然后,我们移动相机以适合作为参数提供的LatLngBounds

主要电话:

  final int POLYGON_PADDING_PREFERENCE = 200;
  final LatLngBounds latLngBounds = getPolygonLatLngBounds(polygon);
  googleMap.moveCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, POLYGON_PADDING_PREFERENCE));

辅助功能:

  private static LatLngBounds getPolygonLatLngBounds(final List<LatLng> polygon) {
    final LatLngBounds.Builder centerBuilder = LatLngBounds.builder();
    for (LatLng point : polygon) {
        centerBuilder.include(point);
    }
    return centerBuilder.build();
  }