Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.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 Mapbox GL JS更新图像覆盖源_Javascript_Mapbox_Geospatial_Mapbox Gl Js - Fatal编程技术网

Javascript Mapbox GL JS更新图像覆盖源

Javascript Mapbox GL JS更新图像覆盖源,javascript,mapbox,geospatial,mapbox-gl-js,Javascript,Mapbox,Geospatial,Mapbox Gl Js,我正在做一个项目,我有4个地图在屏幕上一次。我有一个裸体菜单,用户在其中选择覆盖,它显示在正确的地图上 这是可行的,但是我正在使用的图像覆盖的图像源每2分钟更新一次服务器端。我只想有一个简单的函数来自动重新获取源代码,所以它保证每2分钟更新一次。我已经添加了一个图像来显示它是如何工作的 我已经找到了关于以这种方式更新GeoJSON文件的Mapbox API文档,但我不知道如何自动更新图像源。我看了也没用 这是我的屏幕截图和实际的源代码和层,下面我将为我想要做的事情编写伪代码 以下是源和层: 现在

我正在做一个项目,我有4个地图在屏幕上一次。我有一个裸体菜单,用户在其中选择覆盖,它显示在正确的地图上

这是可行的,但是我正在使用的图像覆盖的图像源每2分钟更新一次服务器端。我只想有一个简单的函数来自动重新获取源代码,所以它保证每2分钟更新一次。我已经添加了一个图像来显示它是如何工作的

我已经找到了关于以这种方式更新GeoJSON文件的Mapbox API文档,但我不知道如何自动更新图像源。我看了也没用

这是我的屏幕截图和实际的源代码和层,下面我将为我想要做的事情编写伪代码

以下是源和层:

现在有吗?updateImage方法,以便您可以执行以下操作:

map.getSource('source_KEWX_L2_REFLECTIVITY').updateImage({
  url: "images/KEWX_L2_REFLECTIVITY.gif?" + counter++,
  coordinates': [
    [-103.009641, 33.911],
    [-94.009641, 33.911],
    [-94.009641, 24.911],
    [-103.009641, 24.911]
  ]
});

包含递增计数器将确保不显示缓存的图像。

尝试以下操作以更新源图像:map.getSource'yourSource'。updateImage{url:yoursourl};
On Map load() {
  start timer for every 2 minutes
  Get Source "source_KEWX_L2_REFLECTIVITY"
  Refresh the source with same URL ("images/KEWX_L2_REFLECTIVITY.gif") to make sure its live.
  keep doing this every 2 minutes
}
map.getSource('source_KEWX_L2_REFLECTIVITY').updateImage({
  url: "images/KEWX_L2_REFLECTIVITY.gif?" + counter++,
  coordinates': [
    [-103.009641, 33.911],
    [-94.009641, 33.911],
    [-94.009641, 24.911],
    [-103.009641, 24.911]
  ]
});