Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.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
Openlayers 3 停止在OpenLayers 3 tileloadstart事件中加载磁贴_Openlayers 3 - Fatal编程技术网

Openlayers 3 停止在OpenLayers 3 tileloadstart事件中加载磁贴

Openlayers 3 停止在OpenLayers 3 tileloadstart事件中加载磁贴,openlayers-3,Openlayers 3,我在OpenLayers 3(版本3.13.1)中有一个使用XYZ源代码的平铺层,url属性设置为http://my.server/map/z{z} /row{y}/{z}{x}{y}.jpg。在我的服务器上,文件夹z2到z8中的平铺图像可用。但是OpenLayers也尝试从不存在的文件夹z1中获取图像。地图显示正确,但我的浏览器的控制台显示“未找到文件”错误。有没有办法停止在tileloadstart事件中加载明显不存在的磁贴?我的代码如下: 函数createTileLayer(){ var

我在OpenLayers 3(版本3.13.1)中有一个使用XYZ源代码的平铺层,url属性设置为
http://my.server/map/z{z} /row{y}/{z}{x}{y}.jpg
。在我的服务器上,文件夹z2到z8中的平铺图像可用。但是OpenLayers也尝试从不存在的文件夹z1中获取图像。地图显示正确,但我的浏览器的控制台显示“未找到文件”错误。有没有办法停止在tileloadstart事件中加载明显不存在的磁贴?我的代码如下:

函数createTileLayer(){
var xyzSource=new ol.source.XYZ({
网址:'http://my.server/map/z{z} /row{y}/{z}{x}{y}.jpg'
});
xyzSource.on('tilleoadstart',函数(evt){
if(evt.tile.tilecord[0]==1){
//停止加载瓷砖?!?!
}
});
返回新的ol.layer.Tile({
范围:\最大范围,
预载:1,
来源:xyzource
});
}

非常感谢您的帮助。

解决方案是正确设置源,使其不会尝试获取您没有的缩放级别的图像:

var xyzSource=new ol.source.XYZ({
网址:'http://my.server/map/z{z} /row{y}/{z}{x}{y}.jpg',
tileGrid:ol.tileGrid.createXYZ({
minZoom:2,
最大缩放:8
})
});

这确实是解决方案。我不知道ol.tilegrid.createXYZ函数。非常感谢:)谢谢@ahocevar