Use consistent tile coordinate keys

Tile coordinate keys from ol.tilecoord.toString() are different than the ones
from Array.prototype.toString(). Both were used, potentially causing problems.
This change makes them consistent and removes the now unnecessary
ol.tileCoord.toString() function.
This commit is contained in:
Andreas Hocevar
2015-12-27 17:59:10 +01:00
parent dad58ba622
commit 300b5cad44
8 changed files with 10 additions and 26 deletions

View File

@@ -59,7 +59,6 @@ goog.require('ol.renderer.dom.Map');
goog.require('ol.renderer.webgl.Map'); goog.require('ol.renderer.webgl.Map');
goog.require('ol.size'); goog.require('ol.size');
goog.require('ol.structs.PriorityQueue'); goog.require('ol.structs.PriorityQueue');
goog.require('ol.tilecoord');
goog.require('ol.vec.Mat4'); goog.require('ol.vec.Mat4');
@@ -937,7 +936,7 @@ ol.Map.prototype.getTilePriority =
if (!frameState || !(tileSourceKey in frameState.wantedTiles)) { if (!frameState || !(tileSourceKey in frameState.wantedTiles)) {
return ol.structs.PriorityQueue.DROP; return ol.structs.PriorityQueue.DROP;
} }
var coordKey = ol.tilecoord.toString(tile.tileCoord); var coordKey = tile.tileCoord.toString();
if (!frameState.wantedTiles[tileSourceKey][coordKey]) { if (!frameState.wantedTiles[tileSourceKey][coordKey]) {
return ol.structs.PriorityQueue.DROP; return ol.structs.PriorityQueue.DROP;
} }

View File

@@ -14,7 +14,6 @@ goog.require('ol.extent');
goog.require('ol.layer.Tile'); goog.require('ol.layer.Tile');
goog.require('ol.renderer.canvas.Layer'); goog.require('ol.renderer.canvas.Layer');
goog.require('ol.size'); goog.require('ol.size');
goog.require('ol.tilecoord');
goog.require('ol.vec.Mat4'); goog.require('ol.vec.Mat4');
@@ -336,7 +335,7 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
} }
goog.asserts.assert(tile); goog.asserts.assert(tile);
if (drawableTile(tile)) { if (drawableTile(tile)) {
tilesToDrawByZ[z][ol.tilecoord.toString(tile.tileCoord)] = tile; tilesToDrawByZ[z][tile.tileCoord.toString()] = tile;
continue; continue;
} }
fullyLoaded = tileGrid.forEachTileCoordParentTileRange( fullyLoaded = tileGrid.forEachTileCoordParentTileRange(

View File

@@ -20,7 +20,6 @@ goog.require('ol.renderer.canvas.Layer');
goog.require('ol.renderer.vector'); goog.require('ol.renderer.vector');
goog.require('ol.size'); goog.require('ol.size');
goog.require('ol.source.VectorTile'); goog.require('ol.source.VectorTile');
goog.require('ol.tilecoord');
goog.require('ol.vec.Mat4'); goog.require('ol.vec.Mat4');
@@ -437,7 +436,7 @@ ol.renderer.canvas.VectorTileLayer.prototype.prepareFrame =
if (tileState == ol.TileState.LOADED || if (tileState == ol.TileState.LOADED ||
tileState == ol.TileState.EMPTY || tileState == ol.TileState.EMPTY ||
(tileState == ol.TileState.ERROR && !useInterimTilesOnError)) { (tileState == ol.TileState.ERROR && !useInterimTilesOnError)) {
tilesToDrawByZ[z][ol.tilecoord.toString(tile.tileCoord)] = tile; tilesToDrawByZ[z][tile.tileCoord.toString()] = tile;
continue; continue;
} }

View File

@@ -19,7 +19,6 @@ goog.require('ol.extent');
goog.require('ol.layer.Tile'); goog.require('ol.layer.Tile');
goog.require('ol.renderer.dom.Layer'); goog.require('ol.renderer.dom.Layer');
goog.require('ol.size'); goog.require('ol.size');
goog.require('ol.tilecoord');
goog.require('ol.tilegrid.TileGrid'); goog.require('ol.tilegrid.TileGrid');
goog.require('ol.vec.Mat4'); goog.require('ol.vec.Mat4');
@@ -142,7 +141,7 @@ ol.renderer.dom.TileLayer.prototype.prepareFrame =
goog.asserts.assert(tile); goog.asserts.assert(tile);
tileState = tile.getState(); tileState = tile.getState();
if (tileState == ol.TileState.LOADED) { if (tileState == ol.TileState.LOADED) {
tilesToDrawByZ[z][ol.tilecoord.toString(tile.tileCoord)] = tile; tilesToDrawByZ[z][tile.tileCoord.toString()] = tile;
continue; continue;
} else if (tileState == ol.TileState.EMPTY || } else if (tileState == ol.TileState.EMPTY ||
(tileState == ol.TileState.ERROR && (tileState == ol.TileState.ERROR &&
@@ -345,7 +344,7 @@ ol.renderer.dom.TileLayerZ_.prototype.addTile = function(tile, tileGutter) {
var tileCoordY = tileCoord[2]; var tileCoordY = tileCoord[2];
goog.asserts.assert(tileCoordZ == this.tileCoordOrigin_[0], goog.asserts.assert(tileCoordZ == this.tileCoordOrigin_[0],
'tileCoordZ matches z of tileCoordOrigin'); 'tileCoordZ matches z of tileCoordOrigin');
var tileCoordKey = ol.tilecoord.toString(tileCoord); var tileCoordKey = tileCoord.toString();
if (tileCoordKey in this.tiles_) { if (tileCoordKey in this.tiles_) {
return; return;
} }
@@ -437,7 +436,7 @@ ol.renderer.dom.TileLayerZ_.prototype.removeTilesOutsideExtent =
var i, ii; var i, ii;
for (i = 0, ii = tilesToRemove.length; i < ii; ++i) { for (i = 0, ii = tilesToRemove.length; i < ii; ++i) {
tile = tilesToRemove[i]; tile = tilesToRemove[i];
tileCoordKey = ol.tilecoord.toString(tile.tileCoord); tileCoordKey = tile.tileCoord.toString();
goog.dom.removeNode(tile.getImage(this)); goog.dom.removeNode(tile.getImage(this));
delete this.tiles_[tileCoordKey]; delete this.tiles_[tileCoordKey];
} }

View File

@@ -13,7 +13,6 @@ goog.require('ol.layer.Layer');
goog.require('ol.source.Source'); goog.require('ol.source.Source');
goog.require('ol.source.State'); goog.require('ol.source.State');
goog.require('ol.source.Tile'); goog.require('ol.source.Tile');
goog.require('ol.tilecoord');
goog.require('ol.vec.Mat4'); goog.require('ol.vec.Mat4');
@@ -319,7 +318,7 @@ ol.renderer.Layer.prototype.manageTilePyramid = function(
if (currentZ - z <= preload) { if (currentZ - z <= preload) {
tile = tileSource.getTile(z, x, y, pixelRatio, projection); tile = tileSource.getTile(z, x, y, pixelRatio, projection);
if (tile.getState() == ol.TileState.IDLE) { if (tile.getState() == ol.TileState.IDLE) {
wantedTiles[ol.tilecoord.toString(tile.tileCoord)] = true; wantedTiles[tile.tileCoord.toString()] = true;
if (!tileQueue.isKeyQueued(tile.getKey())) { if (!tileQueue.isKeyQueued(tile.getKey())) {
tileQueue.enqueue([tile, tileSourceKey, tileQueue.enqueue([tile, tileSourceKey,
tileGrid.getTileCoordCenter(tile.tileCoord), tileResolution]); tileGrid.getTileCoordCenter(tile.tileCoord), tileResolution]);

View File

@@ -18,7 +18,6 @@ goog.require('ol.renderer.webgl.tilelayer.shader.Fragment');
goog.require('ol.renderer.webgl.tilelayer.shader.Locations'); goog.require('ol.renderer.webgl.tilelayer.shader.Locations');
goog.require('ol.renderer.webgl.tilelayer.shader.Vertex'); goog.require('ol.renderer.webgl.tilelayer.shader.Vertex');
goog.require('ol.size'); goog.require('ol.size');
goog.require('ol.tilecoord');
goog.require('ol.vec.Mat4'); goog.require('ol.vec.Mat4');
goog.require('ol.webgl.Buffer'); goog.require('ol.webgl.Buffer');
@@ -271,7 +270,7 @@ ol.renderer.webgl.TileLayer.prototype.prepareFrame =
tileState = tile.getState(); tileState = tile.getState();
if (tileState == ol.TileState.LOADED) { if (tileState == ol.TileState.LOADED) {
if (mapRenderer.isTileTextureLoaded(tile)) { if (mapRenderer.isTileTextureLoaded(tile)) {
tilesToDrawByZ[z][ol.tilecoord.toString(tile.tileCoord)] = tile; tilesToDrawByZ[z][tile.tileCoord.toString()] = tile;
continue; continue;
} }
} else if (tileState == ol.TileState.EMPTY || } else if (tileState == ol.TileState.EMPTY ||

View File

@@ -6,7 +6,6 @@ goog.require('ol.TileState');
goog.require('ol.dom'); goog.require('ol.dom');
goog.require('ol.size'); goog.require('ol.size');
goog.require('ol.source.Tile'); goog.require('ol.source.Tile');
goog.require('ol.tilecoord');
@@ -113,8 +112,8 @@ ol.source.TileDebug.prototype.getTile = function(z, x, y) {
var tileSize = ol.size.toSize(this.tileGrid.getTileSize(z)); var tileSize = ol.size.toSize(this.tileGrid.getTileSize(z));
var tileCoord = [z, x, y]; var tileCoord = [z, x, y];
var textTileCoord = this.getTileCoordForTileUrlFunction(tileCoord); var textTileCoord = this.getTileCoordForTileUrlFunction(tileCoord);
var text = !textTileCoord ? '' : ol.tilecoord.toString( var text = !textTileCoord ? '' :
this.getTileCoordForTileUrlFunction(textTileCoord)); this.getTileCoordForTileUrlFunction(textTileCoord).toString();
var tile = new ol.DebugTile_(tileCoord, tileSize, text); var tile = new ol.DebugTile_(tileCoord, tileSize, text);
this.tileCache.set(tileCoordKey, tile); this.tileCache.set(tileCoordKey, tile);
return tile; return tile;

View File

@@ -103,15 +103,6 @@ ol.tilecoord.quadKey = function(tileCoord) {
}; };
/**
* @param {ol.TileCoord} tileCoord Tile coord.
* @return {string} String.
*/
ol.tilecoord.toString = function(tileCoord) {
return ol.tilecoord.getKeyZXY(tileCoord[0], tileCoord[1], tileCoord[2]);
};
/** /**
* @param {ol.TileCoord} tileCoord Tile coordinate. * @param {ol.TileCoord} tileCoord Tile coordinate.
* @param {ol.tilegrid.TileGrid} tileGrid Tile grid. * @param {ol.tilegrid.TileGrid} tileGrid Tile grid.