From 48eee7e75cdaf2108ddf123304ef46b460a6b78c Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Wed, 24 Feb 2016 09:16:28 +0100 Subject: [PATCH 01/11] Added first version of zoomifytilesource.js --- src/zoomifytilesource.js | 97 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 src/zoomifytilesource.js diff --git a/src/zoomifytilesource.js b/src/zoomifytilesource.js new file mode 100644 index 00000000..3d70f1a2 --- /dev/null +++ b/src/zoomifytilesource.js @@ -0,0 +1,97 @@ +(function( $ ){ + + /** + * @class ZoomifyTileSource + * @classdesc A tilesource implementation for the zoomify format. + * + * @memberof OpenSeadragon + * @extends OpenSeadragon.TileSource + * @param {Number} width - the pixel width of the image. + * @param {Number} height + * @param {Number} tileSize + * @param {String} tilesUrl + */ + $.ZoomifyTileSource = function( options ) { + + options.tileSize = 256; + + var currentImageSize = {x:options.width,y:options.height}; + options.imageSizes = [{x:options.width,y:options.height}]; + options.gridSize = [this._getGridSize(options.width,options.height,options.tileSize)]; + + while(parseInt(currentImageSize.x) > options.tileSize || parseInt(currentImageSize.y) > options.tileSize) { + currentImageSize.x = Math.floor(currentImageSize.x/2); + currentImageSize.y = Math.floor(currentImageSize.y/2); + options.imageSizes.push({x:currentImageSize.x,y:currentImageSize.y}); + options.gridSize.push(this._getGridSize(currentImageSize.x,currentImageSize.y,options.tileSize)); + } + options.imageSizes.reverse(); + options.gridSize.reverse(); + options.minLevel = 0; + options.maxLevel = options.gridSize.length-1; + + + OpenSeadragon.TileSource.apply( this, [ options ] ); + + }; + + $.extend( $.ZoomifyTileSource.prototype, $.TileSource.prototype, /** @lends OpenSeadragon.ZoomifyTileSource.prototype */{ + + _getGridSize: function(width,height,tileSize) { + return {x: Math.ceil(width/tileSize),y:Math.ceil(height/tileSize)}; + }, + + _calculateAbsoluteTileNumber: function (level, x, y) { + var num = 0; + for (var z = 0; z < level; z++) { + var size = this.gridSize[z]; + num += size.x * size.y; + } + var size = this.gridSize[level]; + num += size.x*y+ x + return num; + }, + + /** + * Determine if the data and/or url imply the image service is supported by + * this tile source. + * @function + * @param {Object|Array} data + * @param {String} optional - url + */ + supports: function( data, url ){ + //console.log('ZoomifyTileSource supports ' + data.type); + return ( data.type && "zoomifytileservice" == data.type ); + }, + + /** + * + * @function + * @param {Object} data - the raw configuration + * @param {String} url - the url the data was retreived from if any. + * @return {Object} options - A dictionary of keyword arguments sufficient + * to configure this tile sources constructor. + */ + configure: function( data, url ){ + //console.log('ZoomifyTileSource configure ' + data.tilesUrl); + return data; + }, + + + /** + * @function + * @param {Number} level + * @param {Number} x + * @param {Number} y + */ + getTileUrl: function( level, x, y ){ + //console.log(level); + var result = 0; + var num = this._calculateAbsoluteTileNumber(level,x,y); + result = Math.floor(num/256); + return this.tilesUrl + 'TileGroup' + result + '/' + level + '-' + x + '-' + y + '.jpg'; + + }, + }); + +}( OpenSeadragon )); \ No newline at end of file From 7d4eff0bb881a3fa5110c5b3ef253a69464fc0fd Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Thu, 25 Feb 2016 10:16:08 +0100 Subject: [PATCH 02/11] Minor style fixes --- src/zoomifytilesource.js | 116 +++++++++++++++++++++------------------ 1 file changed, 64 insertions(+), 52 deletions(-) diff --git a/src/zoomifytilesource.js b/src/zoomifytilesource.js index 3d70f1a2..c9fffdc4 100644 --- a/src/zoomifytilesource.js +++ b/src/zoomifytilesource.js @@ -1,4 +1,4 @@ -(function( $ ){ +(function($) { /** * @class ZoomifyTileSource @@ -11,46 +11,60 @@ * @param {Number} tileSize * @param {String} tilesUrl */ - $.ZoomifyTileSource = function( options ) { + $.ZoomifyTileSource = function(options) { - options.tileSize = 256; - - var currentImageSize = {x:options.width,y:options.height}; - options.imageSizes = [{x:options.width,y:options.height}]; - options.gridSize = [this._getGridSize(options.width,options.height,options.tileSize)]; - - while(parseInt(currentImageSize.x) > options.tileSize || parseInt(currentImageSize.y) > options.tileSize) { - currentImageSize.x = Math.floor(currentImageSize.x/2); - currentImageSize.y = Math.floor(currentImageSize.y/2); - options.imageSizes.push({x:currentImageSize.x,y:currentImageSize.y}); - options.gridSize.push(this._getGridSize(currentImageSize.x,currentImageSize.y,options.tileSize)); - } - options.imageSizes.reverse(); - options.gridSize.reverse(); - options.minLevel = 0; - options.maxLevel = options.gridSize.length-1; - - - OpenSeadragon.TileSource.apply( this, [ options ] ); + options.tileSize = 256; + + var currentImageSize = { + x: options.width, + y: options.height + }; + options.imageSizes = [{ + x: options.width, + y: options.height + }]; + options.gridSize = [this._getGridSize(options.width, options.height, options.tileSize)]; + + while (parseInt(currentImageSize.x, 10) > options.tileSize || parseInt(currentImageSize.y, 10) > options.tileSize) { + currentImageSize.x = Math.floor(currentImageSize.x / 2); + currentImageSize.y = Math.floor(currentImageSize.y / 2); + options.imageSizes.push({ + x: currentImageSize.x, + y: currentImageSize.y + }); + options.gridSize.push(this._getGridSize(currentImageSize.x, currentImageSize.y, options.tileSize)); + } + options.imageSizes.reverse(); + options.gridSize.reverse(); + options.minLevel = 0; + options.maxLevel = options.gridSize.length - 1; + + + OpenSeadragon.TileSource.apply(this, [options]); }; - $.extend( $.ZoomifyTileSource.prototype, $.TileSource.prototype, /** @lends OpenSeadragon.ZoomifyTileSource.prototype */{ - - _getGridSize: function(width,height,tileSize) { - return {x: Math.ceil(width/tileSize),y:Math.ceil(height/tileSize)}; - }, - - _calculateAbsoluteTileNumber: function (level, x, y) { - var num = 0; - for (var z = 0; z < level; z++) { - var size = this.gridSize[z]; - num += size.x * size.y; - } - var size = this.gridSize[level]; - num += size.x*y+ x - return num; - }, + $.extend($.ZoomifyTileSource.prototype, $.TileSource.prototype, /** @lends OpenSeadragon.ZoomifyTileSource.prototype */ { + + //private + _getGridSize: function(width, height, tileSize) { + return { + x: Math.ceil(width / tileSize), + y: Math.ceil(height / tileSize) + }; + }, + + //private + _calculateAbsoluteTileNumber: function(level, x, y) { + var num = 0; + for (var z = 0; z < level; z++) { + var size = this.gridSize[z]; + num += size.x * size.y; + } + var size = this.gridSize[level]; + num += size.x * y + x + return num; + }, /** * Determine if the data and/or url imply the image service is supported by @@ -59,9 +73,8 @@ * @param {Object|Array} data * @param {String} optional - url */ - supports: function( data, url ){ - //console.log('ZoomifyTileSource supports ' + data.type); - return ( data.type && "zoomifytileservice" == data.type ); + supports: function(data, url) { + return (data.type && "zoomifytileservice" == data.type); }, /** @@ -72,8 +85,7 @@ * @return {Object} options - A dictionary of keyword arguments sufficient * to configure this tile sources constructor. */ - configure: function( data, url ){ - //console.log('ZoomifyTileSource configure ' + data.tilesUrl); + configure: function(data, url) { return data; }, @@ -84,14 +96,14 @@ * @param {Number} x * @param {Number} y */ - getTileUrl: function( level, x, y ){ - //console.log(level); - var result = 0; - var num = this._calculateAbsoluteTileNumber(level,x,y); - result = Math.floor(num/256); - return this.tilesUrl + 'TileGroup' + result + '/' + level + '-' + x + '-' + y + '.jpg'; - - }, + getTileUrl: function(level, x, y) { + //console.log(level); + var result = 0; + var num = this._calculateAbsoluteTileNumber(level, x, y); + result = Math.floor(num / 256); + return this.tilesUrl + 'TileGroup' + result + '/' + level + '-' + x + '-' + y + '.jpg'; + + } }); - -}( OpenSeadragon )); \ No newline at end of file + +}(OpenSeadragon)); From e54f1a24f00aaf81226cd09ee3773f8daada5a8c Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Thu, 25 Feb 2016 10:18:48 +0100 Subject: [PATCH 03/11] Fixing intendation --- src/zoomifytilesource.js | 198 +++++++++++++++++++-------------------- 1 file changed, 99 insertions(+), 99 deletions(-) diff --git a/src/zoomifytilesource.js b/src/zoomifytilesource.js index c9fffdc4..e2caa377 100644 --- a/src/zoomifytilesource.js +++ b/src/zoomifytilesource.js @@ -1,109 +1,109 @@ (function($) { - /** - * @class ZoomifyTileSource - * @classdesc A tilesource implementation for the zoomify format. - * - * @memberof OpenSeadragon - * @extends OpenSeadragon.TileSource - * @param {Number} width - the pixel width of the image. - * @param {Number} height - * @param {Number} tileSize - * @param {String} tilesUrl - */ - $.ZoomifyTileSource = function(options) { - - options.tileSize = 256; - - var currentImageSize = { - x: options.width, - y: options.height - }; - options.imageSizes = [{ - x: options.width, - y: options.height - }]; - options.gridSize = [this._getGridSize(options.width, options.height, options.tileSize)]; - - while (parseInt(currentImageSize.x, 10) > options.tileSize || parseInt(currentImageSize.y, 10) > options.tileSize) { - currentImageSize.x = Math.floor(currentImageSize.x / 2); - currentImageSize.y = Math.floor(currentImageSize.y / 2); - options.imageSizes.push({ - x: currentImageSize.x, - y: currentImageSize.y - }); - options.gridSize.push(this._getGridSize(currentImageSize.x, currentImageSize.y, options.tileSize)); - } - options.imageSizes.reverse(); - options.gridSize.reverse(); - options.minLevel = 0; - options.maxLevel = options.gridSize.length - 1; - - - OpenSeadragon.TileSource.apply(this, [options]); - - }; - - $.extend($.ZoomifyTileSource.prototype, $.TileSource.prototype, /** @lends OpenSeadragon.ZoomifyTileSource.prototype */ { - - //private - _getGridSize: function(width, height, tileSize) { - return { - x: Math.ceil(width / tileSize), - y: Math.ceil(height / tileSize) - }; - }, - - //private - _calculateAbsoluteTileNumber: function(level, x, y) { - var num = 0; - for (var z = 0; z < level; z++) { - var size = this.gridSize[z]; - num += size.x * size.y; - } - var size = this.gridSize[level]; - num += size.x * y + x - return num; - }, - - /** - * Determine if the data and/or url imply the image service is supported by - * this tile source. - * @function - * @param {Object|Array} data - * @param {String} optional - url - */ - supports: function(data, url) { - return (data.type && "zoomifytileservice" == data.type); - }, - /** + * @class ZoomifyTileSource + * @classdesc A tilesource implementation for the zoomify format. * - * @function - * @param {Object} data - the raw configuration - * @param {String} url - the url the data was retreived from if any. - * @return {Object} options - A dictionary of keyword arguments sufficient - * to configure this tile sources constructor. + * @memberof OpenSeadragon + * @extends OpenSeadragon.TileSource + * @param {Number} width - the pixel width of the image. + * @param {Number} height + * @param {Number} tileSize + * @param {String} tilesUrl */ - configure: function(data, url) { - return data; - }, + $.ZoomifyTileSource = function(options) { + + options.tileSize = 256; + + var currentImageSize = { + x: options.width, + y: options.height + }; + options.imageSizes = [{ + x: options.width, + y: options.height + }]; + options.gridSize = [this._getGridSize(options.width, options.height, options.tileSize)]; + + while (parseInt(currentImageSize.x, 10) > options.tileSize || parseInt(currentImageSize.y, 10) > options.tileSize) { + currentImageSize.x = Math.floor(currentImageSize.x / 2); + currentImageSize.y = Math.floor(currentImageSize.y / 2); + options.imageSizes.push({ + x: currentImageSize.x, + y: currentImageSize.y + }); + options.gridSize.push(this._getGridSize(currentImageSize.x, currentImageSize.y, options.tileSize)); + } + options.imageSizes.reverse(); + options.gridSize.reverse(); + options.minLevel = 0; + options.maxLevel = options.gridSize.length - 1; - /** - * @function - * @param {Number} level - * @param {Number} x - * @param {Number} y - */ - getTileUrl: function(level, x, y) { - //console.log(level); - var result = 0; - var num = this._calculateAbsoluteTileNumber(level, x, y); - result = Math.floor(num / 256); - return this.tilesUrl + 'TileGroup' + result + '/' + level + '-' + x + '-' + y + '.jpg'; + OpenSeadragon.TileSource.apply(this, [options]); - } - }); + }; + + $.extend($.ZoomifyTileSource.prototype, $.TileSource.prototype, /** @lends OpenSeadragon.ZoomifyTileSource.prototype */ { + + //private + _getGridSize: function(width, height, tileSize) { + return { + x: Math.ceil(width / tileSize), + y: Math.ceil(height / tileSize) + }; + }, + + //private + _calculateAbsoluteTileNumber: function(level, x, y) { + var num = 0; + for (var z = 0; z < level; z++) { + var size = this.gridSize[z]; + num += size.x * size.y; + } + var size = this.gridSize[level]; + num += size.x * y + x + return num; + }, + + /** + * Determine if the data and/or url imply the image service is supported by + * this tile source. + * @function + * @param {Object|Array} data + * @param {String} optional - url + */ + supports: function(data, url) { + return (data.type && "zoomifytileservice" == data.type); + }, + + /** + * + * @function + * @param {Object} data - the raw configuration + * @param {String} url - the url the data was retreived from if any. + * @return {Object} options - A dictionary of keyword arguments sufficient + * to configure this tile sources constructor. + */ + configure: function(data, url) { + return data; + }, + + + /** + * @function + * @param {Number} level + * @param {Number} x + * @param {Number} y + */ + getTileUrl: function(level, x, y) { + //console.log(level); + var result = 0; + var num = this._calculateAbsoluteTileNumber(level, x, y); + result = Math.floor(num / 256); + return this.tilesUrl + 'TileGroup' + result + '/' + level + '-' + x + '-' + y + '.jpg'; + + } + }); }(OpenSeadragon)); From 75e5365ecdbe5c1255e38f1c667edb2ea447f053 Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Thu, 25 Feb 2016 11:46:37 +0100 Subject: [PATCH 04/11] Adding zoomify format example --- test/data/zoomify/ImageProperties.xml | 1 + test/data/zoomify/TileGroup0/0-0-0.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/1-0-0.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/1-0-1.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/1-1-0.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/1-1-1.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-0-0.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-0-1.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-0-2.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-0-3.jpg | Bin 0 -> 1569 bytes test/data/zoomify/TileGroup0/2-1-0.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-1-1.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-1-2.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-1-3.jpg | Bin 0 -> 1569 bytes test/data/zoomify/TileGroup0/2-2-0.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-2-1.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-2-2.jpg | Bin 0 -> 1633 bytes test/data/zoomify/TileGroup0/2-2-3.jpg | Bin 0 -> 1569 bytes test/data/zoomify/TileGroup0/2-3-0.jpg | Bin 0 -> 1569 bytes test/data/zoomify/TileGroup0/2-3-1.jpg | Bin 0 -> 1569 bytes test/data/zoomify/TileGroup0/2-3-2.jpg | Bin 0 -> 1569 bytes test/data/zoomify/TileGroup0/2-3-3.jpg | Bin 0 -> 1509 bytes 22 files changed, 1 insertion(+) create mode 100644 test/data/zoomify/ImageProperties.xml create mode 100644 test/data/zoomify/TileGroup0/0-0-0.jpg create mode 100644 test/data/zoomify/TileGroup0/1-0-0.jpg create mode 100644 test/data/zoomify/TileGroup0/1-0-1.jpg create mode 100644 test/data/zoomify/TileGroup0/1-1-0.jpg create mode 100644 test/data/zoomify/TileGroup0/1-1-1.jpg create mode 100644 test/data/zoomify/TileGroup0/2-0-0.jpg create mode 100644 test/data/zoomify/TileGroup0/2-0-1.jpg create mode 100644 test/data/zoomify/TileGroup0/2-0-2.jpg create mode 100644 test/data/zoomify/TileGroup0/2-0-3.jpg create mode 100644 test/data/zoomify/TileGroup0/2-1-0.jpg create mode 100644 test/data/zoomify/TileGroup0/2-1-1.jpg create mode 100644 test/data/zoomify/TileGroup0/2-1-2.jpg create mode 100644 test/data/zoomify/TileGroup0/2-1-3.jpg create mode 100644 test/data/zoomify/TileGroup0/2-2-0.jpg create mode 100644 test/data/zoomify/TileGroup0/2-2-1.jpg create mode 100644 test/data/zoomify/TileGroup0/2-2-2.jpg create mode 100644 test/data/zoomify/TileGroup0/2-2-3.jpg create mode 100644 test/data/zoomify/TileGroup0/2-3-0.jpg create mode 100644 test/data/zoomify/TileGroup0/2-3-1.jpg create mode 100644 test/data/zoomify/TileGroup0/2-3-2.jpg create mode 100644 test/data/zoomify/TileGroup0/2-3-3.jpg diff --git a/test/data/zoomify/ImageProperties.xml b/test/data/zoomify/ImageProperties.xml new file mode 100644 index 00000000..60ddf251 --- /dev/null +++ b/test/data/zoomify/ImageProperties.xml @@ -0,0 +1 @@ + diff --git a/test/data/zoomify/TileGroup0/0-0-0.jpg b/test/data/zoomify/TileGroup0/0-0-0.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f0bdd23875949b9d3d8b2995a68134df93202349 GIT binary patch literal 1633 zcmex=jKe5@ci+Wc+`GL7stuk(Ch)7@&ZWiJ66!jh%y&iyNq5s{jKNBQrA-3o|P#3ky(n zEl{3;MUYiU(a@1iI53f2sZhkIapFP_Wv7h?MT0JWP%%y_YU1P)6PJ*bQdLve(9|+9 zH8Z!cv~qTFb#wRd^a>6M4GWKmj7m;PO-s+n%qlJ^Ei136tZHs)ZENr7?3y%r%G7Do zXUv?nXz`Mz%a*TLxoXqqEnBy3-?4Mop~FXx9y@;G&P778mFHFAhJO8sPtb69D+KAPWEh literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/1-0-0.jpg b/test/data/zoomify/TileGroup0/1-0-0.jpg new file mode 100644 index 0000000000000000000000000000000000000000..94de0274442994c2f17786930cfbf14fb4c81bc9 GIT binary patch literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/1-0-1.jpg b/test/data/zoomify/TileGroup0/1-0-1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..167f1938cd20b5064900c689806f1a1278c682b6 GIT binary patch literal 1633 zcmex=|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaa3*=82fOrheUxGk?F|n{Pv#^8w#mH0+#LR*$tcr$gLXLs# ziG{*SMvWXIP7@byJjkhR9P~jnspuk?n2O0m)sG;rfqh1t$C}9U8QfzCf8Ao>VP*tI e9|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaai;;mD;w>Nv@fe!F1cClyVqsxsVF&q(k*OSrnFU!`6%E;h z90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3q`4e>rc9}EBh literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/1-1-1.jpg b/test/data/zoomify/TileGroup0/1-1-1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d1c293d7c8f738cdd66b946b6004dee775f026ca GIT binary patch literal 1633 zcmex=jKe5@ci+Wc+`GL7stuk(Ch)7@&ZWiJ66!jh%y&iyNq5s{jKNBQrA-3o|P#3ky(n zEl{3;MUYiU(a@1iI53f2sZhkIapFP_Wv7h?MT0JWP%%y_YU1P)6PJ*bQdLve(9|+9 zH8Z!cv~qTFb#wRd^a>6M4GWKmj7m;PO-s+n%qlJ^Ei136tZHs)ZENr7?3y%r%G7Do zXUv?nXz`Mz%a*TLxoXqqEnBy3-?4Mop~FXx9y@;G&P778mFHFAhJO8sPtb69BUcAO8RV literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-0-0.jpg b/test/data/zoomify/TileGroup0/2-0-0.jpg new file mode 100644 index 0000000000000000000000000000000000000000..94de0274442994c2f17786930cfbf14fb4c81bc9 GIT binary patch literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-0-1.jpg b/test/data/zoomify/TileGroup0/2-0-1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..94de0274442994c2f17786930cfbf14fb4c81bc9 GIT binary patch literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-0-2.jpg b/test/data/zoomify/TileGroup0/2-0-2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..94de0274442994c2f17786930cfbf14fb4c81bc9 GIT binary patch literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-0-3.jpg b/test/data/zoomify/TileGroup0/2-0-3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..728d414817d3317eb8ade3af329e55b636d02771 GIT binary patch literal 1569 zcmex=|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaa3*=82fOrheUxGk?F|n{Pv#^8w#mH0+#LR*$tcr$gLXLs# ziG{*SMvWXIP7@byJjkhR9P~jnspuk?n2O0m)sG;rfqh1t$C}9U8QfzCf8Ao>VP*tI e95A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-1-1.jpg b/test/data/zoomify/TileGroup0/2-1-1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..94de0274442994c2f17786930cfbf14fb4c81bc9 GIT binary patch literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-1-2.jpg b/test/data/zoomify/TileGroup0/2-1-2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..94de0274442994c2f17786930cfbf14fb4c81bc9 GIT binary patch literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-1-3.jpg b/test/data/zoomify/TileGroup0/2-1-3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..728d414817d3317eb8ade3af329e55b636d02771 GIT binary patch literal 1569 zcmex=|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaa3*=82fOrheUxGk?F|n{Pv#^8w#mH0+#LR*$tcr$gLXLs# ziG{*SMvWXIP7@byJjkhR9P~jnspuk?n2O0m)sG;rfqh1t$C}9U8QfzCf8Ao>VP*tI e95A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-2-1.jpg b/test/data/zoomify/TileGroup0/2-2-1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..94de0274442994c2f17786930cfbf14fb4c81bc9 GIT binary patch literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-2-2.jpg b/test/data/zoomify/TileGroup0/2-2-2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..94de0274442994c2f17786930cfbf14fb4c81bc9 GIT binary patch literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-2-3.jpg b/test/data/zoomify/TileGroup0/2-2-3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..728d414817d3317eb8ade3af329e55b636d02771 GIT binary patch literal 1569 zcmex=|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaa3*=82fOrheUxGk?F|n{Pv#^8w#mH0+#LR*$tcr$gLXLs# ziG{*SMvWXIP7@byJjkhR9P~jnspuk?n2O0m)sG;rfqh1t$C}9U8QfzCf8Ao>VP*tI e9|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaai;;mD;w>Nv@fe!F1cClyVqsxsVF&q(k*OSrnFU!`6%E;h z90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3=Xy3BUjV literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-3-1.jpg b/test/data/zoomify/TileGroup0/2-3-1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cd242eac0ca05647e38da7bfec128ecdac2eb241 GIT binary patch literal 1569 zcmex=|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaai;;mD;w>Nv@fe!F1cClyVqsxsVF&q(k*OSrnFU!`6%E;h z90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3=Xy3BUjV literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-3-2.jpg b/test/data/zoomify/TileGroup0/2-3-2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cd242eac0ca05647e38da7bfec128ecdac2eb241 GIT binary patch literal 1569 zcmex=|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaai;;mD;w>Nv@fe!F1cClyVqsxsVF&q(k*OSrnFU!`6%E;h z90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3=Xy3BUjV literal 0 HcmV?d00001 diff --git a/test/data/zoomify/TileGroup0/2-3-3.jpg b/test/data/zoomify/TileGroup0/2-3-3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d51cc4bc402a8b3df69ff2748bd50d425f1be781 GIT binary patch literal 1509 zcmex=jKe5@ci+Wc+`GL7stuk(Ch)7@&ZWiJ66!jh%y&iyNq5s{jKNBQrA-3o|P#3ky(n zEl{3;MUYiU(a@1iI53f2sZhkIapFP_Wv7h?MT0JWP%%y_YU1P)6PJ*bQdLve(9|+9 zH8Z!cv~qTFb#wRd^a>6M4GWKmj7m;PO-s+n%qlJ^Ei136tZHs)ZENr7?3y%r%G7Do zXUv?nXz`Mz%a*TLxoXqqEnBy3-?4Mop~FXx9y@;G&P778mFHFAhJO>3!_N)K^ literal 0 HcmV?d00001 From e670ad6e1fbf990a7348d6c15dd8529b2f334a8d Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Thu, 25 Feb 2016 11:46:56 +0100 Subject: [PATCH 05/11] Adding zoomifytilesource to gruntfile so it is considered in build job --- Gruntfile.js | 1 + 1 file changed, 1 insertion(+) diff --git a/Gruntfile.js b/Gruntfile.js index d5891153..1353c6ce 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -38,6 +38,7 @@ module.exports = function(grunt) { "src/iiiftilesource.js", "src/osmtilesource.js", "src/tmstilesource.js", + "src/zoomifytilesource.js", "src/legacytilesource.js", "src/imagetilesource.js", "src/tilesourcecollection.js", From 8637388cab1f065fc87e30a31b9c23b2403afeb6 Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Thu, 25 Feb 2016 11:48:01 +0100 Subject: [PATCH 06/11] Respecting hints from jslint --- src/zoomifytilesource.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/zoomifytilesource.js b/src/zoomifytilesource.js index e2caa377..eb843b97 100644 --- a/src/zoomifytilesource.js +++ b/src/zoomifytilesource.js @@ -12,7 +12,6 @@ * @param {String} tilesUrl */ $.ZoomifyTileSource = function(options) { - options.tileSize = 256; var currentImageSize = { @@ -57,12 +56,16 @@ //private _calculateAbsoluteTileNumber: function(level, x, y) { var num = 0; + var size = {}; + + //Sum up all tiles below the level we want the number of tiles for (var z = 0; z < level; z++) { - var size = this.gridSize[z]; + size = this.gridSize[z]; num += size.x * size.y; } - var size = this.gridSize[level]; - num += size.x * y + x + //Add the tiles of the level + size = this.gridSize[level]; + num += size.x * y + x; return num; }, From 044a5b6794a6fb75234b5b5c2dc3c44a2c8f11ef Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Thu, 25 Feb 2016 11:51:16 +0100 Subject: [PATCH 07/11] Adding test for zoomify format --- test/modules/formats.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/test/modules/formats.js b/test/modules/formats.js index f0edea75..c3a6c850 100644 --- a/test/modules/formats.js +++ b/test/modules/formats.js @@ -154,6 +154,16 @@ url: "/test/data/A.png" }); }); + // ---------- + asyncTest('Zoomify', function () { + testOpen({ + type: "zoomifytileservice", + tileSize: 256, + width: 1000, + height: 1000, + tilesUrl: "/test/data/zoomify/" + }); + }); // ---------- From c9144c0add5df9a0842ecfcde3099cfd65e5483f Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Thu, 25 Feb 2016 11:53:55 +0100 Subject: [PATCH 08/11] Adding missing newline at the end of the file --- src/zoomifytilesource.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/zoomifytilesource.js b/src/zoomifytilesource.js index eb843b97..7e921e6c 100644 --- a/src/zoomifytilesource.js +++ b/src/zoomifytilesource.js @@ -110,3 +110,4 @@ }); }(OpenSeadragon)); + From e993297f6071af0168ddba2713729556b8090e27 Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Fri, 26 Feb 2016 17:18:52 +0100 Subject: [PATCH 09/11] Removing unneccessary blank lines --- src/zoomifytilesource.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/zoomifytilesource.js b/src/zoomifytilesource.js index 7e921e6c..cbd59899 100644 --- a/src/zoomifytilesource.js +++ b/src/zoomifytilesource.js @@ -38,9 +38,7 @@ options.minLevel = 0; options.maxLevel = options.gridSize.length - 1; - OpenSeadragon.TileSource.apply(this, [options]); - }; $.extend($.ZoomifyTileSource.prototype, $.TileSource.prototype, /** @lends OpenSeadragon.ZoomifyTileSource.prototype */ { @@ -92,7 +90,6 @@ return data; }, - /** * @function * @param {Number} level From 44874b25b14b9b6307f02f92a0a903be671f100f Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Fri, 13 May 2016 09:10:49 +0200 Subject: [PATCH 10/11] Using more interesting image for test --- test/data/zoomify/TileGroup0/0-0-0.jpg | Bin 1633 -> 11383 bytes test/data/zoomify/TileGroup0/1-0-0.jpg | Bin 1633 -> 10293 bytes test/data/zoomify/TileGroup0/1-0-1.jpg | Bin 1633 -> 10431 bytes test/data/zoomify/TileGroup0/1-1-0.jpg | Bin 1633 -> 10438 bytes test/data/zoomify/TileGroup0/1-1-1.jpg | Bin 1633 -> 10821 bytes test/data/zoomify/TileGroup0/2-0-0.jpg | Bin 1633 -> 8407 bytes test/data/zoomify/TileGroup0/2-0-1.jpg | Bin 1633 -> 8264 bytes test/data/zoomify/TileGroup0/2-0-2.jpg | Bin 1633 -> 8206 bytes test/data/zoomify/TileGroup0/2-0-3.jpg | Bin 1569 -> 7833 bytes test/data/zoomify/TileGroup0/2-1-0.jpg | Bin 1633 -> 8265 bytes test/data/zoomify/TileGroup0/2-1-1.jpg | Bin 1633 -> 8506 bytes test/data/zoomify/TileGroup0/2-1-2.jpg | Bin 1633 -> 8336 bytes test/data/zoomify/TileGroup0/2-1-3.jpg | Bin 1569 -> 8751 bytes test/data/zoomify/TileGroup0/2-2-0.jpg | Bin 1633 -> 8162 bytes test/data/zoomify/TileGroup0/2-2-1.jpg | Bin 1633 -> 8357 bytes test/data/zoomify/TileGroup0/2-2-2.jpg | Bin 1633 -> 8834 bytes test/data/zoomify/TileGroup0/2-2-3.jpg | Bin 1569 -> 8412 bytes test/data/zoomify/TileGroup0/2-3-0.jpg | Bin 1569 -> 7843 bytes test/data/zoomify/TileGroup0/2-3-1.jpg | Bin 1569 -> 8745 bytes test/data/zoomify/TileGroup0/2-3-2.jpg | Bin 1569 -> 8411 bytes test/data/zoomify/TileGroup0/2-3-3.jpg | Bin 1509 -> 7889 bytes 21 files changed, 0 insertions(+), 0 deletions(-) diff --git a/test/data/zoomify/TileGroup0/0-0-0.jpg b/test/data/zoomify/TileGroup0/0-0-0.jpg index f0bdd23875949b9d3d8b2995a68134df93202349..d441805ddcd4c92f5455aa01133da5ad4725fe8b 100644 GIT binary patch literal 11383 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 diff --git a/test/data/zoomify/TileGroup0/1-0-0.jpg b/test/data/zoomify/TileGroup0/1-0-0.jpg index 94de0274442994c2f17786930cfbf14fb4c81bc9..8f8cd6f5000dc90647d15b5252d5604b20260d39 100644 GIT binary patch literal 10293 zcmbW7c~nzZ^zWmh3~CWjQBfj;L{Liw1VzYI5D@`W2+p>tXjM=f1qY^Z3nHjUBcRA2 zL}pMa;)DZ`7LlnUqXSb?1_^@_NWc)1-2CMUQ%k@_qEM2&gE!1ALc*zPQ(n@0! zi*=S(>o-{2Z*kb_xXo!h)nn(b-Fx=#J9PNhBS(*UdHbF@d+xlSf53&Xi{TNME? zy?!I^W_&_oT6#uiR(4MAod*veJ$_R7^x5;$mu0WYD=Mq18ycJ5zI*?nxuv7CtNUXQ zueYy%SRfo3{URC@kK^mY*E#hwv9SNOE)7`MbS0%3O3L`UrcFN&zcVzHX6mh-rMcNn z`QT|SeX|gi`F7E%1%Im=n7a=x@bsxyTWDy}v0@lsnqp=DcMA*s|61ACg?(FB3t`TT zX|Q=SGzbXc({I21HnZ(7%1WKqvD!TAcRjvmRm>~5j$-Bm4mJ0B20fR@!Z+%9YaZY0 z?AQF|T2R**CC}%$Z`*G+8J;~|Sl~Z$0wXbz)9I`CT0o4J6E4XKXPWHZbzy$aazfCO z6i&-&z1L=p3QSAZNIhq~{==mM2hdu7l>dta;i%TT4!;^+)*WR6`*np*Gp*eEu-e-YwEgPT*Z-iK=qnap(`% z3s@W9k5N){U+BAPT;|CMDGexhYnCueVokJk;nO?Gq3H`7(b~lbKbFc!p*_4UVDSrw zSexC>*&q8QkuDw}$ws`7CZ3EA9>w?~W^T@_BCfDXP5^TY%}8g1xi&osk0@yJ2-e0e| zF4sgjNSRltD#}ZO5sWh97SE}bJdsp9cKzt7vw6;g#j$1xhgjyN^Z?fEC?}LeS+6{- zrMI?_vn+}fOOgud)tSOQapVn#ZKxmjjOdF6*ODUcwhpFn$`d|1$q6>C zf=vFN=)ToShh<$1F7337Faw+tB~J9IFlr`mm6W7(P8f1Au|;5u*6Gf@Hd$cW!5wfD zH=q*_w{alFa9_}iHZr^s6Pmb3P7qaP^EE#RSEp=ett}ZIWZXflY2se^dwq6%hF~|i ziAm3N{0O^mgAdGIJD2I7p-SWv2jzsowx-}SY+*e(HJuV;Y*`^Gl(5^$S?PjbVQO>` zOd>r#yu#TcwF2y6lQ+91e1vcEL1asU3Y?3AKV$uJg6hbE#o;t@H$Isx@t;Rpi53l) zGp0LAD#n<3hUVLkUiHrxMGO=78HH1A;-f%cS_4jV%r18skt8oczq<k`sE3LVm*vU=v@-383@#vWR%B3;o9d>l5X^>#pAZ>K79~$3gJeDYVz_zosj7 z4i{C35MG*`;1}5By(QzyzaEuHJxexkM}bA&+5B7 zoH99qre{k&OD|5JHA<0;vAd}LYr2ORlKWmav-|RQA6`_yyQH zbGuf9k7T~6B3G2tRP$h-$zJ6*AlL4d^9t{v+(T0Dz4|9#-jLjt9;)+b{t#ZdDfd@m z2`XX=)2rzoAij#RrkJf9Ujf@sPMDYbuwc#A2-z8wueLpIW#x?xv?AmZ)#k}4P4Wqi zTD4K@6q8RB?H4ck)p_a3rvmmF_@5Dr+BL;gOfui+h2{rRd#sGxZ(^Nr=;Q+*_IXKH zQ(#l@{(x-R7o?oEYQ=qG|9)AAG|G{x(pvS~ZoYb#Zg{$&Rk0Ea@!q*1a)LXXPwX}^ z^F9()bmJp=Sg~-#7=Hk<%k@>l6GN5{B0_U>`j1|I;#ke#@|je=TYS=lGhEGdRGEt9 zo0z2RiGTW$3|d+=qC2|yGCl%rIIHp5tx#Vqnk1C|V7FZ&uSbQtN{Lpo9pmN2;q1>X!0xeOlhK8+tgy-iUl?@q9z)Wp%D4e?{2 zWiXT)Pu3~xf{%HrYoa1$K4_7Nb=*4II`}ug z06F2JxhG86L&_X;JE?lY0NEfXoMlJn^dEbBp2#t6r_<~|yM3aG`&p1#)Xvq#{Y~y> zK^$>&YpTBcgu)@UkC4+_(m$|;ZxI7*{wMoikR~h1OYxGciAmn#HIgRD%YqT|+l6pK z6-&-OWci9ds)`9wJ+~#d(!{gDqUM7n&||+g7D$36=cehXlDlc}2&$WhK>rgH{KHVs z{gP8{D*ZyKgb7<-?JlL4;AhB0-`hVL!hd%A&lPon9uA5jxE-!}+pg_E8&*ItlM}4B zAzhuOq6%Ry$-%rz(oJ0Zi4lDLT3RG1D~RQHj!w(m`B-o8$EU0X6ga8L_L8s#=~B(oUJb6Vq?TE>ehl2H+kp_+28%P{VG0s z)3e+p5pse*8hv{;jf+bDMWeRg)xO5v2q)2?PSUjaiQP+O8y9jYH0cb6~B)l<*bK8|`bjB;|=)`NR%6VW1ua za+o#{E9-D;s#lSAi<9{3_}`oSChVER*|>xxJlQ*JYkF?F#vrm0K59VpG}Bki+d%5o zYNw+liGkHSY;|=>vyBPjLsGYOEOxxaE`e+UCwa*^^Anq~R5HY?X^0E}^^(mSQF+y^pRb?ZU|a zhm_{Y(p+B1x}-DS4>%DbK5KMvH%1Jp)ADvcUNN})7Mk%7CWc^i8jID&gHfzMa_r_x zg-0QNQS+p%M~;`ccywiNr~CHn)cvlOI8DeB>BtG2E!0VvKO5q4X;wrv=M)pPRFV1x zw3MK-z~WH%O$gsBb$5%15N|u&D?Xlx?FL_V^iReQH%a(}lKg3HDCC5T+e>IMTmw)N zjpoftz(YuvXceU6>*}i{Ovvf#L%GQL?)+*l?7MbjOLj@d69)?VLLnsyd(cWYf|RE8 z*cM3hL}>9KBXm> ztCEbeqS86RyCr#2`#Ooo{xm%GL*_JYwYP+5#GZ&om7dKchz{o^SXWDWyY_^GKqu3t zlw@*iQBj1L$TuBkLP(37co1_40@B~iaci`QTj{ZLuJZs|QO4%8cw30WLR=e-ydOYH={$ePW+Q1c)LRTn5iYUZHu%P_CfczR zFJ(qFQLQk0KXc>~n+u6B;r(aL;E(FB16i~@>sd51(!N|A;X5#z8_3$h30v-QpLt78 zc+RbCh@go(SqX5O;uikI6FG_YKN}&BvfOnb$y^OmoWE&MEt7iC^3154hgr`lFZvmd z#gx~01+rV_j20o$x6L3k7)oo$nnG??)7$eox+U1?s;0Qg0*agvhpWggY5du3Xs&p${_iM7nk)ynhob@`49o77caba~$U2xyjeZ328Mvag4r((`v{q%($lIlG zHgimTQzn%57D8zhuMk9vgElURH-Uxu?=BhA9yv&^6W0%N*!#{kk?X_}<6BsuwjI9* zW4O0+S40S_%Z4yoIJ{xQ$zKk}Krb%X-B>f*LPS`T*w^F_)zxx4TJq)Q>5Jl#V9rm`X9&aHx^ zi%{}A7O(IGQ4mKJ!N)(Z7XobdVx8)rwIR3YHW^+%5e~vVhnJ4&HS{eIHI&DwDZ5&U zsv`8Mt*b@!nrn@jk}l}!?3n9{wIGjn?1^!vLKYN&I3Jc=L7|jIK;n@(sXmHG!*iw$-R5_2erA#V4(mK#{7E+ zhFE9WzXuS#ufCr2ME0)`DW<}WN1yqLn_&`mn{IkbnmGbPJcjZpU|!2KIYF0?$3z3S zogwD_-<@LlgR_a=k#FeRpyz6V`o(rm>!$yxCh1dODKro>M|9sVPA)cp*5f!fzx`6| zX4CPfXq%kS9OXc*GFOVkpGM;oy_vP>)JRsIKZT;B7bb+`xXUQv!XH|LrqYMBL8kZ7 zTO6p^6w^AlTkCNtI;ors7#Rw_Ak;cY_`_3h4{uESeV?<^>)-S{$YXG(8$lIsx-S+{?&^@WZw# z4q9Qn70oq>ajg(Vi74nH&<$*Twxab|DLf37Ahf^%{}?qRe%$l#+uT7mCZ~{RbWy}; z`kPoR0FsVZ>DNx!t^l^4IetS?nrye}LwM=1uC2Fzjjf{gSaED?AFuP=uQwHLgqbir zp4gW7))-YP{^z`e)04O@ywa21tPbhG&#+zr`LWAu*Gp73%zRN;=MoiSJ()8c%EP3C77BL(gzFcPW z?y;bYPfa?eEDdBs=NaX&OGzM0u1&AGmVRW=4t(1+h_(Yzw`Z%bBv*6{~*NnL@ zt70+#!jJBbU-3y=wxfs%`95m<<0?Kjk=Ik%KC*P$D>(S`*8$6iz`iINj;CtgX3Ge5cK{u=VcK)_nXFOPR*8eK--zQo%Z zZ|l2y8y6addUk0b?X(U+dkPbGFo}citPL-#&+gi-d_1;Bsl3x&A9|~>@rJ*ZN;|;` zCAbryp`NIPoRy_P4tUFzwlDlv`K{=}L}@-CI%ChMu-s~plU;(TqBCiDg*`(!3wruq zGiH_nl|X^7SoC(Cthgb`9*aoL$*pHi7C%vcIv@Oq^A*oq1y7nc&|b)f`%RYkFsi_7 zX^91EBH}o?c-c0bjdKnvUWt#+U61BK2ohM}ns@?u2Z+jsbovT^NS9Xw)C0m2K{OOm zl32~V{A9%S$pJF`S`P=*PggVEDmaN+ z5R`~e^-y;eB>m#4z&r1yUX5kt{@+pgMCbg6?D`*C?aWmCeMx9P=506LjB8yDb&Hj;e62zCY1Q|}@O7AwCF1jco@aS*77qI0OLDOS~U z(AL1j>I(doCTN^MSZ-6NZW%euD%ED?i&{RE$VafgFFDdjaM>ny_x^e#Gi@X+>R}1f6pWytM)u`Yb*QcX&#CDb4@QJH)S7q=-32Vo62a8 z9!CGnS|_m%7Lz6C=+I}0kHbc!12HqENCQbYU3K)B8(XymO64k%txl7KYV&nIPS~GB z2y=&A?%ubgtUg`@gLHm@L0rDB%8EOg$r?)O?q&74Pp^q9$%k+XxOs^z4dIeF%aY#r zxv;)A^~-U}$Og!mx13$%wcS8SHyM`!v3^_U^`sy1jQy}`TFbO5e~4cTot zhBZ#Nd{s6{d{%1s&lQ$fsdwl`a8hd^6rrM<;w2gOzigQ_SbqsxQ!d|XNPRQ^M=C@X z0MP)1ERKBeBm(gP_LK~mWAAyqCe7yD&UO;Pxi}BZ(xQHD$UHck5IaIJ3vt-~@}F=H zL;&jgGi%aY#v|tRO=XC%0k7zz$fwm?4F6$skiTq$AOFlcEhi8GY62U>gg;z)RQsY?kPeomzkFXVLdc`gZ zbPexiKZVM<4#L%$le$6x2=q?fh?Z2NWDRjGUJPjjBs?*iFoOM8^I7!735+l~;i)1l z0i=Sklu>zNwu1t@RE$wWA}i5o43O|5h;1`%(25rTUD%b4E;W_kj1tlWTHU}u%59Y& zZ*twh?rKN4^lsxU`)doQ2uOBi{fS5%G!6GN?i7>pG{=&x&AKYSa0Y2pzzs@58i(wt zxW)+F84%+uWQw$bX3giPez$MhF_d>pkqy<(^bj98U58rWYJki{jZq;DQjju!s#RT# z0)CLsGjS@$Jc9_|;3@dxLOEfQlo*dJ7$JqdEb1T*0-zaWc^^55bx#Zn+qg$TVw=u7 zAEeop9a$D5Wr~mzTgS)dKgbC_ijfRaA4Q4ea%Wc6-w~hq0nS%CgpUbwk?6{fo~A&Jz?a^Ib(15=alXul$jxXO-)DNV~^fK2aE6qVGHFzzOy7Ut&&MoqDmX`QsTRB`RO(ebwdag$AMU*1KAGITm= zrfs*y74TJ~O&Me~4GfSC>>qJ0S_0(J@N)%N;)WpL3R6mz3nmI`}TQoACM7PX;NfNuA}6Wx){KpHYf{*+?2~fa9bX zgGn9I)edsNDR#Y{<(}`^N2mBuUkY%Y`O;SDF=P@SE!(%L`C$7wpf~WGeg+sos8d*c zlTui-=kA}nfFJFCHljOHJLT?gLVC2#wVz_1&ms-Rf->F@IM2>!5#jT9@Y$^vk5F*( zl2;Rlhw+a7ZN^5)tIL@OEpCw%q5gXGH!PB{K_g!js+?+gEt;3Up2LShKBJ{6 zMs&S5T6|L+E$!^HpF;f8N=@73r__XSU=4Nx9OHU~!NC?~@)oz$# zHPc7+a>4Oh3W=zu$6?WRE7 zf+G3C{!bOPVA-*-*43&|jN|Yq1a1$_-{3?H=R&5F$IWrqHOqfy?UGo737+?G+ylT4 zys`3|qU=t_>F#RQRuDAGe+E&M2KaTRBJCX(RJT^Bigv^G$(JlKzQLt<@vP`n##OR* zX3TvNTeC{FdlB?OI5s?Z3kNWnoIq<#++-&1bE#9%FEKmA0Xp;@V1;*bEmyTaC%LG{A z1)>@w^K13#;x3X*;MJpA^5#M{G|IpM*7-0x|3h4y424ROqWo$ULa<*GdNc|1gA0P7 z#F%YH&Dw*kK@@U_U)`UkeqZs6I6HnlFqv1Ffeb2md`5Viosp;-c@;MOGz$HBM)F1e zp09Iqr`VKs{qxisgDn{{bTj%5}@YK|^ z))~%o`Q89t!RUfLFvor6gwO3!eDQ#KxL4$@YW(gOC=+f!3TSAZ;SVlTZda^j%0BR& z;U8XCoD*n}_`vN`_7-FR-aO2H4s}9fzj4ZzNyf438f)!xc-!ZhkOr48M0*!u4=get za_ADjP?}!Fb)0R5!BZz$#=5jk;>&Xy#417WA^8HDvk_0e?341#%}Po;!l46hNSMMS z>%3Hj>i(I{+Wd*xBu+`Gi8&`ze?kOQ7Xeg96HL6~{Ia&THm*LM^16x4Q RI6H~}?+5G&7Oj;x{|`}$d7S_N literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r diff --git a/test/data/zoomify/TileGroup0/1-0-1.jpg b/test/data/zoomify/TileGroup0/1-0-1.jpg index 167f1938cd20b5064900c689806f1a1278c682b6..2ccb6d1b3251a4b858edc84e29c10b5e11a5801a 100644 GIT binary patch literal 10431 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 e9i4$g}*3Km48uMzI=tcp4JN0)oRO^uQbtK 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 literal 1633 zcmex=|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaai;;mD;w>Nv@fe!F1cClyVqsxsVF&q(k*OSrnFU!`6%E;h z90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3q`4e>rc9}EBh diff --git a/test/data/zoomify/TileGroup0/1-1-1.jpg b/test/data/zoomify/TileGroup0/1-1-1.jpg index d1c293d7c8f738cdd66b946b6004dee775f026ca..9425bd738f410416d32dc7a75ea313f89566d417 100644 GIT binary patch literal 10821 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 diff --git a/test/data/zoomify/TileGroup0/2-0-0.jpg b/test/data/zoomify/TileGroup0/2-0-0.jpg index 94de0274442994c2f17786930cfbf14fb4c81bc9..c2645b3bc6b7f62c666cbf44682fa34368c95100 100644 GIT binary patch literal 8407 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 diff --git a/test/data/zoomify/TileGroup0/2-0-1.jpg b/test/data/zoomify/TileGroup0/2-0-1.jpg index 94de0274442994c2f17786930cfbf14fb4c81bc9..9e74a8b0dd2bb36237ed6452bccdb8863059e8a0 100644 GIT binary patch literal 8264 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 literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r diff --git a/test/data/zoomify/TileGroup0/2-0-2.jpg b/test/data/zoomify/TileGroup0/2-0-2.jpg index 94de0274442994c2f17786930cfbf14fb4c81bc9..501e35a6ecf7d4ee2176e26f5d6043c5137f2c43 100644 GIT binary patch literal 8206 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 literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r diff --git a/test/data/zoomify/TileGroup0/2-0-3.jpg b/test/data/zoomify/TileGroup0/2-0-3.jpg index 728d414817d3317eb8ade3af329e55b636d02771..01d24f10db737058b085b9b13cf2817543b4a2bd 100644 GIT binary patch literal 7833 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 WI*s+&mM`DFL-(O_+{#%3+WBAaSh`98 literal 1569 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 literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r diff --git a/test/data/zoomify/TileGroup0/2-1-1.jpg b/test/data/zoomify/TileGroup0/2-1-1.jpg index 94de0274442994c2f17786930cfbf14fb4c81bc9..56cd401c2c552997a1c2e3b0886323b537819013 100644 GIT binary patch literal 8506 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 literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r diff --git a/test/data/zoomify/TileGroup0/2-1-2.jpg b/test/data/zoomify/TileGroup0/2-1-2.jpg index 94de0274442994c2f17786930cfbf14fb4c81bc9..e9df496e33a7894cc1aa62d36a86b5dceb38aae9 100644 GIT binary patch literal 8336 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 SU@XBNf$^H3cKXnVwf+}3HQ;st literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r diff --git a/test/data/zoomify/TileGroup0/2-1-3.jpg b/test/data/zoomify/TileGroup0/2-1-3.jpg index 728d414817d3317eb8ade3af329e55b636d02771..02169f4abc7bbf75ccdb929b79ff587cfac94eb2 100644 GIT binary patch literal 8751 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 D4&RHE literal 1569 zcmex=|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaa3*=82fOrheUxGk?F|n{Pv#^8w#mH0+#LR*$tcr$gLXLs# ziG{*SMvWXIP7@byJjkhR9P~jnspuk?n2O0m)sG;rfqh1t$C}9U8QfzCf8Ao>VP*tI e9y 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 literal 1633 zcmex=5A1R0qH8UG()kY`|EWMu>c1}I=;VrF4wW9Q)H;sz?%D!{d!pzFb!U9xX z3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~nmD<{#3dx9RMpfqG__1j z&CD$uqec!9r-=(U9^_Ou4*DRPRCJL`OvU7(>PL{*z&<0+V@+iF4DK<6ziu(`Ff#%p ek6Dnxp5f=eE{z3Dqj)q7M$^EEOauJ?Zvp_VQyv)r diff --git a/test/data/zoomify/TileGroup0/2-2-1.jpg b/test/data/zoomify/TileGroup0/2-2-1.jpg index 94de0274442994c2f17786930cfbf14fb4c81bc9..444d39364b83400b13465b8e553570c28aca2818 100644 GIT binary patch literal 8357 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 diff --git a/test/data/zoomify/TileGroup0/2-2-2.jpg b/test/data/zoomify/TileGroup0/2-2-2.jpg index 94de0274442994c2f17786930cfbf14fb4c81bc9..54c45605cbb8ac092c759b7eb1541c1ae131724e 100644 GIT binary patch literal 8834 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 diff --git a/test/data/zoomify/TileGroup0/2-2-3.jpg b/test/data/zoomify/TileGroup0/2-2-3.jpg index 728d414817d3317eb8ade3af329e55b636d02771..215d5a8a0b270a5e269ec6e380d4b8cead3a5b8a 100644 GIT binary patch literal 8412 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 SvU2}1{&{&eiMWD|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaa3*=82fOrheUxGk?F|n{Pv#^8w#mH0+#LR*$tcr$gLXLs# ziG{*SMvWXIP7@byJjkhR9P~jnspuk?n2O0m)sG;rfqh1t$C}9U8QfzCf8Ao>VP*tI e95ZP|zx@wSyMB$cq(49aPQ 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 diff --git a/test/data/zoomify/TileGroup0/2-3-1.jpg b/test/data/zoomify/TileGroup0/2-3-1.jpg index cd242eac0ca05647e38da7bfec128ecdac2eb241..d0ed18082ec41e6660ea6f7e141ca3c397fb5544 100644 GIT binary patch literal 8745 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 I`4E5iKQMK@ApigX literal 1569 zcmex=|HF0u@iAzXIsj8`KXlj|5 znweWzS~We&gn?hmRgVdHU@6 zi$mSee*Oaai;;mD;w>Nv@fe!F1cClyVqsxsVF&q(k*OSrnFU!`6%E;h z90S=C3x$=88aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3=Xy3BUjV diff --git a/test/data/zoomify/TileGroup0/2-3-2.jpg b/test/data/zoomify/TileGroup0/2-3-2.jpg index cd242eac0ca05647e38da7bfec128ecdac2eb241..7eb9598f808ee2be634ee54d007f9b0ec594598f 100644 GIT binary patch literal 8411 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 diff --git a/test/data/zoomify/TileGroup0/2-3-3.jpg b/test/data/zoomify/TileGroup0/2-3-3.jpg index d51cc4bc402a8b3df69ff2748bd50d425f1be781..5eb4d3034dd2055b0947ac516be386678192da40 100644 GIT binary patch literal 7889 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 From 0d9e2e8b96de8bf8939320dce4ac051808b69753 Mon Sep 17 00:00:00 2001 From: Ralph Krimmel Date: Mon, 1 Aug 2016 09:39:54 +0200 Subject: [PATCH 11/11] Adding a comment describing the format --- src/zoomifytilesource.js | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/src/zoomifytilesource.js b/src/zoomifytilesource.js index cbd59899..7066db9e 100644 --- a/src/zoomifytilesource.js +++ b/src/zoomifytilesource.js @@ -4,7 +4,39 @@ * @class ZoomifyTileSource * @classdesc A tilesource implementation for the zoomify format. * - * @memberof OpenSeadragon + * A description of the format can be found here: + * https://ecommons.cornell.edu/bitstream/handle/1813/5410/Introducing_Zoomify_Image.pdf + * + * There are two ways of creating a zoomify tilesource for openseadragon + * + * 1) Supplying all necessary information in the tilesource object. A minimal example object for this method looks like this: + * + * { + * type: "zoomifytileservice", + * width: 1000, + * height: 1000, + * tilesUrl: "/test/data/zoomify/" + * } + * + * The tilesize if currently hardcoded to 256. The tileUrl must the the path to the image _directory_. + * + * 2) Loading image metadata from xml file: (CURRENTLY NOT SUPPORTED) + * + * When creating zoomify formatted images one "xml" like file with name ImageProperties.xml + * will be created as well. Here is an example of such a file: + * + * + * + * To use this xml file as metadata source you must supply the path to the ImageProperties.xml file and leave out all other parameters: + * As stated above, this method of loading a zoomify tilesource is currently not supported + * + * { + * type: "zoomifytileservice", + * tilesUrl: "/test/data/zoomify/ImageProperties.xml" + * } + + * + * @memberof OpenSeadragon * @extends OpenSeadragon.TileSource * @param {Number} width - the pixel width of the image. * @param {Number} height