Don't use rendered framebuffer when source revision has changed
This commit is contained in:
@@ -72,6 +72,12 @@ ol.renderer.webgl.TileLayer = function(mapRenderer, tileLayer) {
|
|||||||
*/
|
*/
|
||||||
this.renderedFramebufferExtent_ = null;
|
this.renderedFramebufferExtent_ = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @private
|
||||||
|
* @type {number}
|
||||||
|
*/
|
||||||
|
this.renderedRevision_ = -1;
|
||||||
|
|
||||||
};
|
};
|
||||||
goog.inherits(ol.renderer.webgl.TileLayer, ol.renderer.webgl.Layer);
|
goog.inherits(ol.renderer.webgl.TileLayer, ol.renderer.webgl.Layer);
|
||||||
|
|
||||||
@@ -138,7 +144,8 @@ ol.renderer.webgl.TileLayer.prototype.renderFrame =
|
|||||||
|
|
||||||
var framebufferExtent;
|
var framebufferExtent;
|
||||||
if (!goog.isNull(this.renderedTileRange_) &&
|
if (!goog.isNull(this.renderedTileRange_) &&
|
||||||
this.renderedTileRange_.equals(tileRange)) {
|
this.renderedTileRange_.equals(tileRange) &&
|
||||||
|
this.renderedRevision_ == tileSource.getRevision()) {
|
||||||
framebufferExtent = this.renderedFramebufferExtent_;
|
framebufferExtent = this.renderedFramebufferExtent_;
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
@@ -255,9 +262,11 @@ ol.renderer.webgl.TileLayer.prototype.renderFrame =
|
|||||||
if (allTilesLoaded) {
|
if (allTilesLoaded) {
|
||||||
this.renderedTileRange_ = tileRange;
|
this.renderedTileRange_ = tileRange;
|
||||||
this.renderedFramebufferExtent_ = framebufferExtent;
|
this.renderedFramebufferExtent_ = framebufferExtent;
|
||||||
|
this.renderedRevision_ = tileSource.getRevision();
|
||||||
} else {
|
} else {
|
||||||
this.renderedTileRange_ = null;
|
this.renderedTileRange_ = null;
|
||||||
this.renderedFramebufferExtent_ = null;
|
this.renderedFramebufferExtent_ = null;
|
||||||
|
this.renderedRevision_ = -1;
|
||||||
frameState.animate = true;
|
frameState.animate = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user