Mapbox GL 加载缺失的栅格图块错误图像

Mapbox GL Loading Missing Raster Tiles Error Image

我正在开发一个从 Leaflet 转换而来的 GL 项目。在 Leaflet 下,当我们设置图块边界(视图的最大边界限制)时,当您超出最大边界时,可能会呈现默认或错误图块图像。因此,在可能的情况下,我会渲染一个图块,其中显示一条消息,说明所选数据仅适用于澳大利亚(或任何 country/region)。

在传单中,这被称为: errorTileUrl String '' URL 到要显示的图块图像以代替加载失败的图块。

这意味着我不必将 blank/msg 个图像图块加载到图块服务器中。这在 MapBox GL 系统中完全可行吗?

这是我使用的样式:

            style: {
            "version": 8,
            "sources": {
                "Tiles": {
                    "type": "raster",
                    "tiles": ["https://myprivate server/{z}/{x}/{y}.png"],
                    "tileSize": 256
                }
            },
            "layers": [{
                "id": "Tiles",
                "type": "raster",
                "source": "Tiles",
                "minzoom": 0,
                "maxzoom": 13
            }],
            "sprite": "mapbox://sprites/mapbox/outdoors-v9",
            "glyphs": "mapbox://fonts/mapbox/{fontstack}/{range}.pbf"
        },

我仍然希望能够在请求的图块出现 http 下载错误时发送 blank/default 图块来查看世界。目前它呈现一个白色方块并给出下载失败的控制台错误。

这在 GL JS 中尚不可行。我们正在 https://github.com/mapbox/mapbox-gl-js/issues/1775

跟踪 TileJSON maxBounds 的实施

根据您的用例,您可以在下游实现此功能,方法是添加功能以响应 tile.error 事件,或在栅格图层下方添加一个显示所需加载/错误纹理的图层.