Reuse ol.TileRange object in forEachTileCoordParentTileRange

This commit is contained in:
Tom Payne
2013-03-24 13:46:23 +01:00
parent 3fbf7b8c20
commit 5771057ae1
3 changed files with 14 additions and 13 deletions

View File

@@ -39,18 +39,11 @@ goog.inherits(ol.tilegrid.XYZ, ol.tilegrid.TileGrid);
*/
ol.tilegrid.XYZ.prototype.forEachTileCoordParentTileRange =
function(tileCoord, callback, opt_obj) {
var x = tileCoord.x;
var y = tileCoord.y;
var z = tileCoord.z;
var tileRange;
while (true) {
z -= 1;
if (z < 0) {
break;
}
x >>= 1;
y >>= 1;
tileRange = new ol.TileRange(x, y, x, y);
var tileRange = new ol.TileRange(0, 0, tileCoord.x, tileCoord.y);
var z;
for (z = tileCoord.z - 1; z >= 0; --z) {
tileRange.minX = tileRange.maxX >>= 1;
tileRange.minY = tileRange.maxY >>= 1;
if (callback.call(opt_obj, z, tileRange)) {
break;
}