Google地图圈子如何适合地图

Ser*_*nov 22 google-maps google-maps-api-3

我们有远程搜索过滤器.它具有地图视口,允许设置基本标记和输入文本框,允许以千米为单位输入距离.

然后在视口中,我们使用圆圈在地图上显示此距离.

问题,如何缩放地图以使其适合圆圈?

Dr.*_*lle 49

A google.maps.Circle有一个getBounds()返回LatLngBounds圆圈的方法.您可以使用此边界作为参数google.maps.Map.fitBounds()

如果使用圆圈,您可以这样做:

map.fitBounds(circle.getBounds());
Run Code Online (Sandbox Code Playgroud)

...在init函数结束时.

http://jsfiddle.net/doktormolle/MHLjy/


Sab*_*iri 21

对于多个圈子,使用union而不是extend:

var bounds = new google.maps.LatLngBounds();

$.each(circles, function(index, circle){
    bounds.union(circle.getBounds());
});

map.fitBounds(bounds);
Run Code Online (Sandbox Code Playgroud)

  • 好的。我用它来确保*至少*包含搜索半径圆,然后使用 latlngBounds.extend(marker.getPosition()) 进一步扩展任何标记的边界 (2认同)