Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何根据容器大小设置maxResolution?_Javascript_Openlayers_Viewport - Fatal编程技术网

Javascript 如何根据容器大小设置maxResolution?

Javascript 如何根据容器大小设置maxResolution?,javascript,openlayers,viewport,Javascript,Openlayers,Viewport,我创建了一个openlayers地图,它的最小缩放级别应该固定在2 如果包含贴图的的大小约为1000 px x 750 px,则此操作正常: 现在我们的容器大小变化很大。因此,我们有一个容器div,也就是说,700px 300px,它的结果是: 现在,我想在第二张更小的容器大小/视口中获得与第一张图片相同的地图视图 通常我会调整zoomlevel,但是如果设置了min zoom,我必须禁用地图的平移 我希望缩放级别与容器大小无关,但事实并非如此,因此我需要找到一种方法,根据maxResolu

我创建了一个openlayers地图,它的最小缩放级别应该固定在
2

如果包含贴图的
的大小约为
1000 px x 750 px
,则此操作正常:

现在我们的容器大小变化很大。因此,我们有一个容器div,也就是说,
700px 300px
,它的结果是:

现在,我想在第二张更小的容器大小/视口中获得与第一张图片相同的地图视图

通常我会调整zoomlevel,但是如果设置了min zoom,我必须禁用地图的平移

我希望缩放级别与容器大小无关,但事实并非如此,因此我需要找到一种方法,根据maxResolution限制显示的数据,并相应地限制平移


现在我找不到合适的方法来做这件事。是否有人可以提供一个函数或公式,说明如何计算openlayers贴图(视图)的maxResolution属性,以便显示的贴图范围始终相同,而不管容器/目标(div)大小如何

您不是在寻找设置maxResolution或minResolution的方法

这就是你需要的

使你的地图适合

minLongitude: -80
maxLongitude: 80
minLatitude: -180
maxLatitude: 180
例如: 根据您想要的视图调整第一个数组=>[minx,miny,maxx,maxy]。 我的坐标在
EPSG:4326

map.getView().fit([-80, -180, 80, 180], { padding: [0, 0, 0, 0], size: map.getSize() });

这是一种方法,如果您需要一个示例或没有使用,只需询问

您不是在寻找设置maxResolution或minResolution的方法

这就是你需要的

使你的地图适合

minLongitude: -80
maxLongitude: 80
minLatitude: -180
maxLatitude: 180
例如: 根据您想要的视图调整第一个数组=>[minx,miny,maxx,maxy]。 我的坐标在
EPSG:4326

map.getView().fit([-80, -180, 80, 180], { padding: [0, 0, 0, 0], size: map.getSize() });

这是一种方法,如果你需要一个例子,或者你不需要uderstood,只要问一下(如果你提供了一个例子,我会非常高兴:)好的,这是可行的,但是如果用户使用“maxZoom”,我如何限制平移?这意味着范围是最大的?这是另一个问题,请看这个等待反馈。如果您提供一个示例,我将非常高兴:)好的,这是可行的,但是如果用户使用“最大缩放”,我如何限制平移?这意味着范围是最大的?这是另一个问题,请看这个等待反馈