我已經放在一起在js小提琴上的一個小片段,所以你可以看到我正在與我的工作。谷歌地圖v3縮放以適合所有標記(路徑)功能
基本上我試圖掛鉤一個「縮放」按鈕,以便一旦創建路徑,您可以單擊縮放按鈕,然後地圖縮放以適合路徑。我找到的所有答案都有我沒有的一系列標記。任何建議將不勝感激。
我已經放在一起在js小提琴上的一個小片段,所以你可以看到我正在與我的工作。谷歌地圖v3縮放以適合所有標記(路徑)功能
基本上我試圖掛鉤一個「縮放」按鈕,以便一旦創建路徑,您可以單擊縮放按鈕,然後地圖縮放以適合路徑。我找到的所有答案都有我沒有的一系列標記。任何建議將不勝感激。
唉,其實你做有標記的數組!它存儲在用戶點擊地圖時創建的Polyline
中。要檢索用戶點擊的點,只需使用Polyline.getPath()
即可。然後,您可以將這些點(作爲地理編碼提及)添加到LatLngBounds
對象,並使用google.maps.Map.fitBounds()
將地圖視圖調整爲給定範圍。
下面是基於您提供的代碼示例(您可以看到它工作here)縮放方法的簡單實現。
function zoom() {
var bounds = new google.maps.LatLngBounds();
geodesic.getPath().forEach(function(latLng) {
bounds.extend(latLng);
});
map.fitBounds(bounds);
}
給你帶標記看到的例子類似,(使用bounds.extend())添加的所有google.maps.LatLngs的路徑google.maps.LatLngBounds對象,然後調用地圖.fitBounds生成的邊界對象。
對不起,能否爲我詳細說明一下,我對js和api有點新鮮。 – Shane
增加了一個jsfiddle,它擴展了每個點的邊界並使用map.fitBounds(bounds)。 – geocodezip
非常感謝你,工作就像一個魅力! – Shane