OpenLayers使用Bounds放大到美国

时间:2012-07-09 12:42:22

标签: javascript openlayers

您好我正在使用OpenLayers,我想制作缩放地图以显示所有美国领土 我已将下一个代码添加到我的JS文件

zoomMapTo: function (x1, y1, x2, y2) {
    var bounds = new OpenLayers.Bounds(x1, y1, x1, y2);
    map.zoomToExtent(bounds,4);
}

但我不知道我应该使用coordenate 我想把它称为

zoomMapTo(-19838714.3168264, 2146075.00656018, 19971050.5931969, 11542768.518094);

zoomMapTo(-120, 20, -70, 50); 

但我在海洋中请一些人请 我必须使用那个坐标?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

我发现我需要将其转换为EPSG:4326

var bounds = new OpenLayers.Bounds(); 
bounds.extend(new OpenLayers.LonLat(x1, y1).transform(new OpenLayers.Projection("EPSG:4326"), appOL.mapobj.map.getProjectionObject())); 
bounds.extend(new OpenLayers.LonLat(x2, y2).transform(new OpenLayers.Projection("EPSG:4326"), appOL.mapobj.map.getProjectionObject()