>Unfortunately, I cannot get openlayers to recognize this format (it
has 1 px image in folder 0, then increases in size until e. g. folder 6
starts with 256x256 tiles).
Create your layer as a TMS type. Override the getURL method and put in
one of your own (I have never heard of libvips but presumably you know
how to construct the relationship between a bounds and a tile).
Here is some code fragment that I used for a custom TMS.
function tms_getTileURL(bounds) {
adjustBounds(bounds, this.maxExtent);
var res = this.getServerResolution();
var defImage = "images/none.png";
var x = Math.round((bounds.left - this.maxExtent.left) / (res *
this.tileSize.w));
var y = Math.round((bounds.bottom - this.tileOrigin.lat) / (res *
this.tileSize.h));
z = this.serverResolutions != null ?
OpenLayers.Util.indexOf(this.serverResolutions, res) : z +
this.zoomOffset;*/
var z = this.serverResolutions != null ?
OpenLayers.Util.indexOf(this.serverResolutions, res) :
this.getServerZoom() + this.zoomOffset;
if (this.tileExtent.left > this.tileExtent.right) {
var b1 = new OpenLayers.Bounds(this.tileExtent.left,
this.tileExtent.bottom, this.map.maxExtent.right, this.tileExtent.top);
var b2 = new OpenLayers.Bounds(this.map.maxExtent.left,
this.tileExtent.bottom, this.tileExtent.right, this.tileExtent.top);
if ((b1.intersectsBounds(bounds) ||
b2.intersectsBounds(bounds)) && z>= this.mapMinZoom ) {
return this.url + this.serviceVersion + "/" +
this.layername + "/" + z + "/" + x + "/" + y + "." + this.type;
} else {
return defImage;
}
} else {
if (this.tileExtent.intersectsBounds(bounds) && z >=
this.mapMinZoom ) {
return this.url + this.serviceVersion + "/" +
this.layername + "/" + z + "/" + x + "/" + y + "." + this.type;
} else {
return defImage;
}
}
}
I opened the layer as:
layer = new OpenLayers.Layer.TMS(name, path, {
type: 'png',
alpha: true,
serviceVersion: '',
layername: layerName,
tileExtent: new OpenLayers.Bounds(imageBounds.left,
imageBounds.bottom, imageBounds.right, imageBounds.top).transform(dproj,
proj),
mapMinZoom: imageMinZoom,
mapMaxZoom: imageMaxZoom,
getURL: tms_getTileURL,
displayOutsideMaxExtent: false,
zoomOffset: 0,
serverResolutions:serverRes
});
Notice: This email and any attachments are confidential. If received in error
please destroy and immediately notify us. Do not copy or disclose the contents.
_______________________________________________
Dev mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/openlayers-dev