Animation 在动画之前预加载分片

Animation 在动画之前预加载分片,animation,preload,openlayers-3,Animation,Preload,Openlayers 3,我目前正在使用OpenLayers制作一些动画,但有时这些动画太快,无法显示平滑缩放(瓷砖加载速度不够快)-这是预期的行为。但我的页面上的动画只有在浏览者阅读完整篇文章(约1分钟)后才会启动,所以我想我可以在这个不活动的时间预加载动画所需的互动程序 是否有可能预加载图层/地图的分幅?我在想一些解决办法: 创建另一个视图并在第一层后面模拟动画 在可见图层后面创建图层/贴图克隆,并创建动画 在那额外的时间里落后了。动画完成后,只需显示 预加载图 根据要加载的磁贴,调用一些loadTiles函数,

我目前正在使用OpenLayers制作一些动画,但有时这些动画太快,无法显示平滑缩放(瓷砖加载速度不够快)-这是预期的行为。但我的页面上的动画只有在浏览者阅读完整篇文章(约1分钟)后才会启动,所以我想我可以在这个不活动的时间预加载动画所需的互动程序

是否有可能预加载图层/地图的分幅?我在想一些解决办法:

  • 创建另一个视图并在第一层后面模拟动画
  • 在可见图层后面创建图层/贴图克隆,并创建动画 在那额外的时间里落后了。动画完成后,只需显示 预加载图
  • 根据要加载的磁贴,调用一些loadTiles函数, 但我不知道函数是否存在

这比你想象的要容易得多-瓷砖层有一个
预加载
选项。因此,如果您想预加载(例如,缩小到缩放级别3),可以使用

new ol.layer.Tile({
  ...
  preload: 3
});

另请参见。

请参见,共识是“不,他们不应该”!感谢您澄清preload参数(我认为它只预加载低质量的瓷砖)。问题是我已经实现了平滑的缩放和平移,位置可能在1000公里之外,我想预加载这些动画。不幸的是,在这种情况下,“预加载”属性不起作用:(您是正确的-预加载将加载较低分辨率的分幅,从缩放级别0向下加载到为“预加载”指定的缩放级别,但仅加载可见范围。这无助于平移,仅用于缩放。