-1
ポリゴンの形状(管理境界)の高さに応じてズームのレベルを定義できますか? このポリゴンはマップのdivに完全に表示されます。Googleマップを動的にズーム
ポリゴンの形状(管理境界)の高さに応じてズームのレベルを定義できますか? このポリゴンはマップのdivに完全に表示されます。Googleマップを動的にズーム
map.fitBounds(my_bounds)
関数があります。この関数は、指定された境界を含むようにビューポートを設定します。可能な限り高いズームレベルにマップを設定し、境界全体を見ることができます。
そのためには、ポリゴンの境界を特定する必要があります。 google.maps.Polygon
を使用してポリゴンを表示する場合は、this solutionをチェックしてください。
Data layer
を使用している場合は、
this SO answerをチェックアウト
google.maps.Polygon.prototype.getBounds = function() {
var bounds = new google.maps.LatLngBounds();
var paths = this.getPaths();
var path;
for (var i = 0; i < paths.getLength(); i++) {
path = paths.getAt(i);
for (var ii = 0; ii < path.getLength(); ii++) {
bounds.extend(path.getAt(ii));
}
}
return bounds;
}
...
map.fitBounds(my_polygon.getBounds());
。ポリゴンの場合は、Data.Feature
の範囲を計算する方法の例を示します。あなたは、多角形の境界を決定するためのいくつかの他の手段を持っている場合は
、そしてちょうどこれを使用する:
map.fitBounds(new google.maps.LatLngBounds(new google.maps.LatLng(SouthWestCornerLat, SouthWestCornerLng), new google.maps.LatLng(NorthEastCornerLat, NorthEastCornerLng));
パーフェクト。ありがとうございます ! –