在创建这样的地图时:
var map = new ol.Map({
loadTilesWhileAnimating: true,
loadTilesWhileInteracting: true
})OpenLayers 3在缩放和平移时使用临时拼贴(即以前加载的较低分辨率拼贴),直到它完成加载新拼贴。临时瓷砖被放置在真正瓷砖的后面。这是非常聪明的,对于不透明的层是很好的,但对于大多数透明的层来说就不是那么好了。
我们目前有一个层,它只由几条线组成,只有几个像素思考。稍微平移贴图会使这些斑点变成巨大的斑点,导致大量闪烁。
有没有办法禁止创建这些临时磁贴,只为一个特定的层?如果仅仅因为一个层就需要禁用loadTilesWhile*属性,那就太令人失望了。
例如,请参见:http://imgur.com/RbtmkpT左侧是正常的(红线是我的),右侧是在稍微平移之后。
这是源上的cacheSize 0和useInterimTilesOnError false。
更新: OpenLayers 3.12的表现有所不同。在该版本中,只有未加载的磁贴是模糊的(这是意料之中的),但已加载的磁贴将保持不变。从3.13或3.14开始,这种行为发生了变化。
发布于 2016-04-20 16:35:29
有关解决方案/解决方法,请参阅OpenLayers GitHub存储库中的我的拉取请求:https://github.com/openlayers/ol3/issues/5251#issuecomment-212322292
https://stackoverflow.com/questions/36567347
复制相似问题