ちょっとハマったのでメモメモ。
GoogleMapsAPIには、fitBoundsなる便利なメソッドが用意されています。
東西南北端の緯度経度を渡してやれば、それぞれの座標が地図上に全て表示されるように、zoom値を調整してくれるというもの。
ただ、コレの指定のしかたが謎だったのです。
結果的にはこんな感じ。
var maxlat = hoge;//最大緯度 var maxlng = hogehoge;//最大経度 var minlat = foo;//最小緯度 var minlng = foofoo;//最小経度 //北西端の座標を設定 var sw = new google.maps.LatLng(maxlat,minlng); //東南端の座標を設定 var ne = new google.maps.LatLng(minlat,maxlng); //範囲を設定 var bounds = new google.maps.LatLngBounds(sw, ne); //自動調整 map.fitBounds(bounds,5);
map はいつもの感じでMapオブジェクトを作っておく必要ありますが、ここでは省略します。
google.maps.LatLngBounds
↑コレがわからずに四苦八苦しました。
北西端と東南端を用意して、LatLngBoundsに突っ込んでgooglemapsさんご指定の範囲指定形式にしとかんとイカンようです。
なんとか無事に表示できました。
いやはや便利です。