lineBounds static method

LatLngBounds lineBounds(
  1. List<LatLng> polyline
)

取到最大最小值构造容纳线上所有点的矩形

Implementation

static LatLngBounds lineBounds(List<LatLng> polyline) {
  double? minLng, minLat, maxLng, maxLat;
  polyline.forEach((LatLng latLng) {
    double cLng = latLng.longitude;
    double cLat = latLng.latitude;
    if (minLng == null || cLng < minLng!) minLng = cLng;
    if (minLat == null || cLat < minLat!) minLat = cLat;
    if (maxLng == null || cLng > maxLng!) maxLng = cLng;
    if (maxLat == null || cLat > maxLat!) maxLat = cLat;
  });
  LatLng southwest = LatLng(minLat!, minLng!);
  LatLng northeast = LatLng(maxLat!, maxLng!);
  return LatLngBounds(southwest: southwest, northeast: northeast);
}