Google地图会在给定窗口中选择缩放以适合国家/地区

时间:2014-02-09 16:03:28

标签: google-maps

我刚开始使用Google Maps API。我已成功设法创建以特定国家/地区为中心的地图

function create_map (geometry) {
    var mapOptions = {
        center: geometry.position,
        zoom: 6 // unimportant, see fitBounds
    };
    var map = new google.maps.Map (
        document .getElementById ("map-canvas"),
        mapOptions);

    map.fitBounds (geometry.viewport);
}

function initialize ()
{
    new google.maps.Geocoder().geocode (
        {'address': 'france'},
        function (results, status)
    {
        if (google.maps.GeocoderStatus.OK == status)
            create_map (results [0].geometry);
        else
            alert ("bad: "+ status);
    });
}

google.maps.event.addDomListener (window, 'load', initialize);

这样可以,但选择缩放级别有很多空余。我希望地图尽可能大,没有“舒适”的余地。如何使API紧密贴合窗口?

2 个答案:

答案 0 :(得分:0)

这是不可能的。地图的缩放可能只能设置为整数值,但您要实现的目标需要浮点值。

转到http://gmaps-samples-v3.googlecode.com/svn/trunk/geocoder/v3-geocoder-tool.html#q%3Dfrance

蓝色矩形标记视口,当您将缩放比例增加1时,蓝色矩形将无法放入容器中。

答案 1 :(得分:0)

您正在使用错误的对象属性。 geometry.positionundefined。您必须使用geometry.location,您将获得更好的地图而不使用map.fitBounds()