Enable ol.TileRange re-use
This commit is contained in:
@@ -42,11 +42,13 @@ goog.inherits(ol.tilegrid.XYZ, ol.tilegrid.TileGrid);
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
ol.tilegrid.XYZ.prototype.getTileCoordChildTileRange = function(tileCoord) {
|
||||
ol.tilegrid.XYZ.prototype.getTileCoordChildTileRange =
|
||||
function(tileCoord, opt_tileRange) {
|
||||
if (tileCoord.z < this.maxZoom_) {
|
||||
return new ol.TileRange(
|
||||
return ol.TileRange.createOrUpdate(
|
||||
tileCoord.x << 1, tileCoord.y << 1,
|
||||
tileCoord.x + 1 << 1, tileCoord.y + 1 << 1);
|
||||
tileCoord.x + 1 << 1, tileCoord.y + 1 << 1,
|
||||
opt_tileRange);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
@@ -57,8 +59,9 @@ ol.tilegrid.XYZ.prototype.getTileCoordChildTileRange = function(tileCoord) {
|
||||
* @inheritDoc
|
||||
*/
|
||||
ol.tilegrid.XYZ.prototype.forEachTileCoordParentTileRange =
|
||||
function(tileCoord, callback, opt_obj) {
|
||||
var tileRange = new ol.TileRange(0, 0, tileCoord.x, tileCoord.y);
|
||||
function(tileCoord, callback, opt_obj, opt_tileRange) {
|
||||
var tileRange = ol.TileRange.createOrUpdate(
|
||||
0, 0, tileCoord.x, tileCoord.y, opt_tileRange);
|
||||
var z;
|
||||
for (z = tileCoord.z - 1; z >= 0; --z) {
|
||||
tileRange.minX = tileRange.maxX >>= 1;
|
||||
|
||||
Reference in New Issue
Block a user