我目前正在使用OpenLayers 3 ImageCanvas source和Image layer来渲染动态图层。我一直致力于将实际的渲染工作转移到Web工作者,但我遇到了问题,因为ImageCanvas源实际上是用于同步处理。
每当视口更改时都会调用canvasFunction
,并且它希望我返回新渲染的画布。但是,由于我的渲染是异步的,因此我还没有新渲染的画布。我能做的最好的事情就是启动渲染任务并返回一个空白帧,然后在我的工作完成后再触发OL3再渲染。显然,这会导致闪烁效果不理想。
我注意到ol.ImageCanvas
has some support用于异步处理,但似乎ol.source.ImageCanvas
似乎没有利用此功能。
还有其他方法可以利用此功能吗?或者可以修改ol.source.ImageCanvas
来做到这一点吗?