1

我有一张地图,其背景图层为欧洲,另一个 (XYZ) 图层显示的区域要小得多。如何避免来自 XYZ 层的 404 错误消息用于未退出的瓷砖我试图通过范围:[-0.795668404302292,-0.7037491016945445,48.78018752203186,48.83999044180076] 但它不起作用。

4

1 回答 1

1

在大多数情况下,在图层上设置范围更容易。

要限制源的范围,您必须为其提供自定义平铺网格,例如

var defaultTileGrid = createXYZ();

var source = new XYZ({
  url: .... ,
  tileGrid: new TileGrid({
    origin: defaultTileGrid.getOrigin(0),
    resolutions: defaultTileGrid.getResolutions(),
    extent: extent
  })
});

边界必须与源在同一投影中

所以对于 EPSG:4326 你需要

var defaultTileGrid = createXYZ({extent: getProjection('EPSG:4326').getExtent()});

var source = new XYZ({
  url: .... ,
  tileGrid: new TileGrid({
    origin: defaultTileGrid.getOrigin(0),
    resolutions: defaultTileGrid.getResolutions(),
    extent: [-0.795668404302292, 48.78018752203186, -0.7037491016945445, 48.83999044180076] 
  })
});
于 2020-02-06T15:21:17.360 回答