google-map-react用多个标记将地图居中

时间:2019-06-04 15:23:51

标签: javascript reactjs google-maps google-map-react

当我有两个以上的标记时,如何找到地图的中心?当我只有2个时,我就这样完成:

midPoint(trackingLocation, deliveryLocation) {
    if (deliveryLocation) {
      return [
        trackingLocation.lat + (deliveryLocation.lat - trackingLocation.lat) * 0.5,
        trackingLocation.lng + (deliveryLocation.lng - trackingLocation.lng) * 0.5
      ];
    } else {
      return trackingLocation;
    }
  }

但是当我有5个标记时如何计算中心?

谢谢

1 个答案:

答案 0 :(得分:0)

找到包含所有标记的矩形,然后使用该矩形的中点。

首先,浏览所有标记并找到:

  • minLat
  • minLng
  • maxLat
  • maxLng

然后,您可以对这两点进行与两个标记相同的计算:

  • (minLat,minLng)
  • (maxLat,maxLng)