如何在OpenLayers中设置默认视图,而不限制边界?

问题描述:

基于样品,我可以看到他说的线沿线的东西,你可以设置的OpenLayers默认视图:如何在OpenLayers中设置默认视图,而不限制边界?

var bounds = new OpenLayers.Bounds(-125, 25, -65, 50); 
var map = new OpenLayers.Map('map', {restrictedExtent: bounds }); 

然而,这也(顾名思义),限制我能只能在这些界限内导航。我可以缩小并看到这些边界之外的东西,但是我无法缩放到它们上面,或者滚动到它们。

我试过没有任何restrictedExtent(或使它成为整个地图),但后来我无法让它专注于我想要的区域。我试着使用:

 map.setCenter(new OpenLayers.LonLat(0,0), 3); 
    console.log(map.getCenter()); 

设定缩放和中心...但它似乎并没有做任何事情,除了设置变量“中心”,我可以再从map.getCenter阅读() (如果我没有设置它,它是空的,如果我确实设置了它,我可以看到它......但地图本身保持完全扩展,并且它的中心似乎根本没有改变......)

我使用的地图层:

OpenLayers.Layer.OSM.Mapnik 

与displayOutsideMaxExtent设置为true ...我不知所措我真的在这里。

我的目标是让世界的一个默认区域放大并进入视野(例如美国),并且观众可以选择默认查看内容。

我想我已经知道了。无论出于何种原因,缩放永远不会改变,但中心显然是移动(它只是如此缩小,我不知道)。除此之外,我需要改变中心以使用谷歌投影,而且它似乎工作得很好。

我最终什么事做的是:

var lonlat = new OpenLayers.LonLat(20,37).transform(new OpenLayers.Projection("EPSG:4326"),new OpenLayers.Projection("EPSG:900913")); 
map.setCenter(lonlat); 
map.zoomTo(4);