mapbox / leaflet:如果切片不可用则阻止缩放

时间:2015-06-08 23:53:21

标签: leaflet mapbox

我有一个应用程序,允许用户搜索位置并放大地图,主要是卫星图像不可用于更高缩放级别的远程位置。这会导致地图经常请求显示为空白图像的缺失切片。有没有办法检查和停止缩放,以便地图不要求/加载这些空白区块?

我知道如何显示自定义缺少的图块,但我试图通过阻止缩放来避免使用它。

谢谢,

1 个答案:

答案 0 :(得分:-1)

您可以尝试的一种方法是尝试预加载切片。方法是监听地图边界的变化,当发生这种情况时,您可以尝试加载当前围绕缩放级别的图块。

您可以通过创建TileLayer和请求磁贴来执行此操作,其形式为:

http://{s}.tile.osm.org/{z}/{x}/{y}.png?{foo}

其中z是缩放,xy是图块坐标。

您可以listen to tile loading events并在加载图块时,请求不同缩放的图块。根据这些是否有效,您可以允许或不允许用户缩放。

或者,如果您事先知道了瓷砖设置的可用性,则可以根据白色瓷砖坐标列表限制移动。