0

Googleマップのボンディングボックスを取得/設定するにはどうすればよいですか?センターとズームを使用してマップを作成する方法を知っていますが、ボックスに基づいてマップのビューを保存し、後でマップボンド(マップのNEとSW)を使用して同じビューを再作成する方法が必要です。

どうすればこれができるのでしょうか?

私はMVC3を使用しています。

4

1 に答える 1

1

LatLngBoundsオブジェクトを返すmap.getBounds()関数を使用するとします。これから、getNorthEast()およびgetSouthWest()を使用して、必要な座標を取得できます。

var bounds = map.getBounds();
var NE = bounds.getNorthEast();
var SW = bounds.getSouthWest();

これらのLatLngオブジェクトを文字列にする必要がある場合(DBへの挿入やCookieへの書き込みなど)、それらに対してtoString()関数を使用するだけです。

strNE = NE.toString();
strSW = SW.toString();

したがって、これらをCookieに書き込むか、Ajaxを使用してDBに書き込むと仮定します。後でそれらをcookie/DBから取り出したら、それらを使用してマップの中心を設定できます。

bounds = new google.maps.LatLngBounds(SW, NE);
map.fitBounds(bounds);  // or maybe try panToBounds()

これらの機能はすべて、https ://developers.google.com/maps/documentation/javascript/referenceに記載されています。

于 2012-06-11T16:05:25.383 に答える