Discard unwanted tiles from tile queue

This commit is contained in:
Tom Payne
2013-01-18 16:36:26 +01:00
parent 111b4585a8
commit 1c524caae6
8 changed files with 63 additions and 23 deletions

View File

@@ -270,6 +270,7 @@ ol.renderer.webgl.TileLayer.prototype.renderFrame =
var tileLayer = this.getTileLayer();
var tileSource = tileLayer.getTileSource();
var tileSourceKey = goog.getUid(tileSource).toString();
var tileGrid = tileSource.getTileGrid();
var z = tileGrid.getZForResolution(view2DState.resolution);
var tileResolution = tileGrid.getResolution(z);
@@ -392,7 +393,7 @@ ol.renderer.webgl.TileLayer.prototype.renderFrame =
tileState = tile.getState();
if (tileState == ol.TileState.IDLE) {
tileCenter = tileGrid.getTileCoordCenter(tileCoord);
frameState.tileQueue.enqueue(tile, tileCenter, tileResolution);
frameState.tileQueue.enqueue(tile, tileSourceKey, tileCenter);
} else if (tileState == ol.TileState.LOADED) {
if (mapRenderer.isTileTextureLoaded(tile)) {
tilesToDrawByZ[z][tileCoord.toString()] = tile;
@@ -460,6 +461,7 @@ ol.renderer.webgl.TileLayer.prototype.renderFrame =
}
this.updateTileUsage(frameState.tileUsage, tileSource, z, tileRange);
this.updateWantedTiles(frameState.wantedTiles, tileSource, z, tileRange);
goog.vec.Mat4.makeIdentity(this.matrix_);
goog.vec.Mat4.translate(this.matrix_,