Refactor attribution control

This commit is contained in:
Tom Payne
2013-01-16 16:34:31 +01:00
parent 41ccb4dfcd
commit 9fbabc3696
10 changed files with 224 additions and 545 deletions

View File

@@ -89,6 +89,21 @@ ol.renderer.dom.TileLayer.prototype.renderFrame =
var tileRange = tileGrid.getTileRangeForExtentAndResolution(
frameState.extent, tileResolution);
// FIXME should also consider interim tiles
var tileUsage = frameState.tileUsage;
var tileSourceKey = goog.getUid(tileSource).toString();
var zKey = z.toString();
if (tileSourceKey in tileUsage) {
if (z in tileUsage[tileSourceKey]) {
tileUsage[tileSourceKey][zKey].extend(tileRange);
} else {
tileUsage[tileSourceKey][zKey] = tileRange;
}
} else {
tileUsage[tileSourceKey] = {};
tileUsage[tileSourceKey][zKey] = tileRange;
}
/** @type {Object.<number, Object.<string, ol.Tile>>} */
var tilesToDrawByZ = {};
tilesToDrawByZ[z] = {};