Google Maps APIでは、座標のリストが指定されたマップの境界を設定できます。それは素晴らしいです。私の問題は、それが両側に呼吸の部屋の少しを与えるということです。私は境界線をほとんど含んでいないと思っているバウンディングボックスを取得しようとしています。Google Maps API setBounds from exact coordinates
たとえば、カリフォルニアを表示して境界線を北東と南西のコーナーに設定します。しかしカリフォルニアだけではなく、オレゴンとメキシコの半分をすべて手に入れました。
は、ここで私が現在やっているものです:
var geo_region = {
northeast: {
lat: 42.0095169
lng: -114.131211
}
southwest: {
lat: 32.528832
lng: -124.482003
}
}
var map_bounds = new google.maps.LatLngBounds();
map_bounds.extend(new google.maps.LatLng(geo_region.northeast.lat, geo_region.northeast.lng));
map_bounds.extend(new google.maps.LatLng(geo_region.southwest.lat, geo_region.southwest.lng));
var plot_map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
plot_map.fitBounds(map_bounds);
EDIT:それは、このような素敵な長方形なので 明確な例では、ワイオミングかもしれません。私の地図の大きさがワイオミングと同じ比率であれば、ワイオミングを私に見せたいだけです。
EDIT: 誰かが私が境界を手動でオフセットするように提案したので、Googleが使用しているオフセットについていくつかのデータを取得しましたが、それらのオフセットを決定するための式が何であるか把握できませんそれを行うことができなくなるからです。私はGoogleのジオコーディングAPIからのビューポート座標を使用していましたが、それらはあまり役に立ちませんでした。
は、ここに私のデータです:https://docs.google.com/a/dovidev.com/spreadsheets/d/1HZLdDt5uiGwEtY0NbX0pfkmYVuUDndptm_-kzq0vh_w/edit?usp=sharing
関連する質問:[GoogleマップV3 - 特定の範囲のズームレベルを計算する方法](http://stackoverflow.com/questions/6048975/google-maps-v3-how-to-calculate-the-zoom -level-for-a-given-bounds) – geocodezip