Merge pull request #626 from mpriour/zeropad

Consolidate numeric zero padding functions (r=@bartvde)
This commit is contained in:
Bart van den Eijnden
2013-01-09 00:26:17 -08:00
6 changed files with 54 additions and 63 deletions

View File

@@ -116,31 +116,16 @@ OpenLayers.Layer.TileCache = OpenLayers.Class(OpenLayers.Layer.Grid, {
var tileZ = this.serverResolutions != null ?
OpenLayers.Util.indexOf(this.serverResolutions, res) :
this.map.getZoom();
/**
* Zero-pad a positive integer.
* number - {Int}
* length - {Int}
*
* Returns:
* {String} A zero-padded string
*/
function zeroPad(number, length) {
number = String(number);
var zeros = [];
for(var i=0; i<length; ++i) {
zeros.push('0');
}
return zeros.join('').substring(0, length - number.length) + number;
}
var components = [
this.layername,
zeroPad(tileZ, 2),
zeroPad(parseInt(tileX / 1000000), 3),
zeroPad((parseInt(tileX / 1000) % 1000), 3),
zeroPad((parseInt(tileX) % 1000), 3),
zeroPad(parseInt(tileY / 1000000), 3),
zeroPad((parseInt(tileY / 1000) % 1000), 3),
zeroPad((parseInt(tileY) % 1000), 3) + '.' + this.extension
OpenLayers.Number.zeroPad(tileZ, 2),
OpenLayers.Number.zeroPad(parseInt(tileX / 1000000), 3),
OpenLayers.Number.zeroPad((parseInt(tileX / 1000) % 1000), 3),
OpenLayers.Number.zeroPad((parseInt(tileX) % 1000), 3),
OpenLayers.Number.zeroPad(parseInt(tileY / 1000000), 3),
OpenLayers.Number.zeroPad((parseInt(tileY / 1000) % 1000), 3),
OpenLayers.Number.zeroPad((parseInt(tileY) % 1000), 3) + '.' + this.extension
];
var path = components.join('/');
var url = this.url;