This project has moved. For the latest updates, please go here.

Using non-geographic tile source

Dec 14, 2015 at 11:51 PM
I have some high resolution imagery (>100k x 100k pixels) that I currently serve using a fine open source tile server (http://iipimage.sourceforge.net/).

The protocol to fetch a single tile is roughly:
http: //your.server/fcgi-bin/iipsrv.fcgi?FIF=/path/image.tif&JTL=2,5
(returns tile #5 of resolution 2)

or specifying a bounding box in pixels:
http: //your.server/fcgi-bin/iipsrv.fcgi?IIIF=image.tif/0,0,800,800/400,400/90/default.jpg
(800 px square reduced to 400px at quality=90)

I have a clumsy wpf control that uses a canvas and some scrollbars, but I'd like to use something more sophisticated like this xamlmapcontrol project.
Has anyone tried using this control for high resolution imagery other than maps?
Can anyone offer me some advice as to how to proceed, or whether or not this is a poor application of the control?

Thanks
Coordinator
Dec 15, 2015 at 11:03 AM
Edited Dec 15, 2015 at 11:04 AM
You would somehow have to project the image tiles to geographic bounding boxes, either defined in lat/lot or meters according to the WebMercator projection EPSG:3857. The image tile bitmaps would also have to be (re-)projected into the WebMercator projection.

Then you could use a tile source URI format with the placeholders {W}, {S}, {E} and {N} for the bounding box in lat/lon or {w}, {s}, {e} and {n} for a bounding box in meters.

You could also implement you own ImageTileSource, where you overload the
public virtual ImageSource LoadImage(int x, int y, int zoomLevel)
method. Then you should take a look at the GetBoundingBoxUri and GetLatLonBoundingBoxUri methods for some code that calculates bounding boxes from tile indices and zoom level.