デフォルトでは、イリノイ州シカゴを地図の中心にする方法の例が Google によって提供されています。
var chicago = new google.maps.LatLng(41.850033, -87.6500523);
デフォルトのセンター フォーカスを米国全体にすることは可能ですか? これはどこにも見つかりません。
デフォルトでは、イリノイ州シカゴを地図の中心にする方法の例が Google によって提供されています。
var chicago = new google.maps.LatLng(41.850033, -87.6500523);
デフォルトのセンター フォーカスを米国全体にすることは可能ですか? これはどこにも見つかりません。
シカゴを中心として、を変更しzoom
ます。
ここに例があります。少し作り直されたバージョン(テストされていません!):
gMap = new google.maps.Map(document.getElementById('map'));
gMap.setCenter(new google.maps.LatLng(41.850033, -87.6500523));
gMap.setZoom(ANewZoomLevel);
ニーズに合った適切なズームレベルを見つけるために実験する必要があります。
1 つのオプションは、ジオコーダーを使用することです。"United States of America"をジオコーディングすると、マップの中央に配置してズームするために使用できる "推奨ビューポート" が返されます。
"viewport": {
"Z": {
"b": 25.82,
"d": 49.38
},
"ca": {
"b": -124.38999999999999,
"d": -66.94
}
}
ジオコーダが返す中心/場所は次のとおりです。37.09024, -95.712891
に変換します。
"viewport": {
NorthEast: { lat:49.38, lng:-66.94 },
SouthWest: { lat:25.82, lng:-124.39 }
}
境界と推奨ビューポートという 2 つの類似した情報があります。範囲にはアラスカとハワイが含まれていると思いますが、ビューポートの方がニーズに適しているかもしれません.
最も簡単な方法は、手動でマップを中央に配置し、好きなようにズームしてから、getCenter() と getZoom() を使用して現在の値を取得し、それらを使用してマップを初期化することです。
以下は、ジオコードを使用してドロップダウン リストから国にズームする例です(ビューポートではなく、境界を使用します。米国の場合は異なります)。
ズームはデバイスの幅に依存するため、境界に合わせるのが最適です。あるデバイスで見栄えがよくても、別のデバイスでは大きすぎたり小さすぎたりします。したがって:
var bounds = new google.maps.LatLngBounds(
new google.maps.LatLng(25.82, -124.39),
new google.maps.LatLng(49.38, -66.94)
);
map.fitBounds(bounds);