[英]OpenLayers minimal zoom smaller than bounding box
我在osm和openlayers上遇到了问题。 首先,我的地图对象
var wgs84 = new OpenLayers.Projection("EPSG:4326");
var map = new OpenLayers.Map ('map',
{
projection: new OpenLayers.Projection("EPSG:900913"),
displayProjection: wgs84,
maxExtent: new OpenLayers.Bounds(-180,-20, 180, 90),
controls: [
new OpenLayers.Control.MousePosition(),
new OpenLayers.Control.PanZoomBar(),
]
});
如您所见,我的边界框在-20处结束,因此应该显示南极洲。
但我可以缩小地图以便看到整个世界,并且地图比map-div(900 * 500)小。
有解决方案吗? 您应该无法获得比边界框所允许的更小的地图。
您是否实现了strictedExtent参数?
(来自文档)limitedExtent
{OpenLayers.Bounds}尽可能将地图导航限制在此范围内。 如果设置了非空的strictExtent,则平移将限制在给定的范围内。 此外,缩放到显示超出限制范围的分辨率将使地图在限制范围内居中。
请在此处查看示例 -这样可以停止平移边界,但不会限制缩放级别。 这似乎是大量报道的缺少许多解决方案的功能。
我相信,尽管OpenLayers中的“最小最大缩放”级别使该SO帖子具有一些解决方法,
希望我有所帮助。
看一下我在http://beta1234.com.sunflower.arvixe.com/maps/上所做的示例(服务器有点慢)。 它使用restrictedExtent
和受限缩放级别。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.