Google maps 谷歌地图的最小缩放范围

Google maps 谷歌地图的最小缩放范围,google-maps,google-maps-api-3,Google Maps,Google Maps Api 3,我有一个简单的谷歌地图,填满了整个页面。 以下是一个示例: <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> <title>Google Maps JavaScript API v3 Example: Marker Animations</title> <link href

我有一个简单的谷歌地图,填满了整个页面。 以下是一个示例:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>Google Maps JavaScript API v3 Example: Marker Animations</title>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
  var stockholm = new google.maps.LatLng(59.32522, 18.07002);
  var map;

  function initialize() {
    var mapOptions = {
      zoom: 0,
      mapTypeId: google.maps.MapTypeId.ROADMAP,
      center: stockholm
    };

    map = new google.maps.Map(document.getElementById("map_canvas"),
            mapOptions);

   google.maps.event.addListener(map, 'idle', function() {
      var b = map.getBounds();
      document.getElementById("bounds").innerText = b.getSouthWest().lng() + ", " + b.getNorthEast().lng();
   });

  }
</script>
</head>
<body onload="initialize()">
<div id="map_canvas" style="width: 100%; height: 100%;">map div</div>
<div id="bounds" style="left: 100px; top: 0px; width: 300px; height: 30px; position: absolute; background-color: #a0a0a0;"></div>
</body>
</html>

Google Maps JavaScript API v3示例:标记动画
var stockholm=新google.maps.LatLng(59.32522,18.07002);
var映射;
函数初始化(){
变量映射选项={
缩放:0,
mapTypeId:google.maps.mapTypeId.ROADMAP,
中心:斯德哥尔摩
};
map=new google.maps.map(document.getElementById(“map_canvas”),
地图选项);
google.maps.event.addListener(映射'idle',函数(){
var b=map.getBounds();
document.getElementById(“bounds”).innerText=b.getSouthWest().lng()+,“+b.getNorthwest().lng();
});
}
地图组
在最小的缩放级别,当你可以看到几个世界地图时,我希望经度边界是-180-180,但在现实中我不明白。我的期望是错误的吗?为什么


在实际应用程序中,我有一个服务器端代码,根据当前地图边界从数据库中获取标记。

边界将报告窗口边界处的lat和lng,即使地图已包装了几次。所以你窗口右下角的纬度lng是一个点,左上角是另一个点

我也有同样的问题,我最后做的是创建一个90,180到-90,-180的世界边界,然后看看是否适合窗口

var ne = new google.maps.LatLng(90, 180);
var sw = new google.maps.LatLng(-90, -180)
var world = new google.maps.LatLngBounds(ne, sw);
var fetchbounds;
if(map.getBounds().contains(ne) && map.getBounds().contains(sw)){
    fetchBounds = world;
}else{
    fetchBounds = map.getBounds();
}

不清楚你在问什么。提供有关您正在看到的内容、希望看到的内容以及它们之间的区别的详细信息。如果运行我的示例(我刚刚将缩放级别更改为0),您将看到以下经度值或类似值:
-159.11748,-164.742480000001
。我希望看到
-180,180
,因为此时地图是完全可见的。返回的边界显然是地图分区的最西边和最东边显示的经度。因此,如果您有“全世界”显示,并且第180子午线没有与分区的左侧精确对齐,然后,您将得到-180和+180以外的值作为边界。人们以前对此有过困难:您似乎想要的是地图的“非包装”边界。我不知道如何在Google maps v3 API中做到这一点。另请参见:不幸的是,这似乎不起作用,因为LatLngBounds.contains只接受LatlngObjectstry,即。。。它正在检查拐角处