I'm looking at cell coverage maps such as this one, and trying to figure out how to get a GIS program to use it as a source of information. Ultimately, I need to be able to combine the output with other cell coverage maps from different sources. But in order to do that, I need to understand how each one works and how to align them with each other.
Strangely, each of the five zoom levels offered has a different tile size:
- 160x160 pixels
- 128x128
- 145x145
- 198x198
- 182x182
I've never seen a map tile service like that before. Usually the tile sizes are all the same. Do map-service-consuming tools (I'm thinking of open-source tools like Tilecloud) have the ability to consume maps whose layers have different - practically random - tile sizes?
Additionally, I'd like to know how the tiles are georeferenced. Maybe that's not exactly the right way to say it ... but I need to be able to combine tiles from different maps so that they're aligned properly.
Maybe I could get the information needed for that if I knew what kind of map tile API is being implemented by http://gsma.streetmap.co.uk/custom/barts/gsma/. Maybe they have a REST URL that gives data about spatial reference and so on. But I haven't been able to figure out what API they're implementing.
Using the browser debugging tools, I see URLs like http://gsma.streetmap.co.uk/custom/barts/gsma/gmap.srf?o=1&i=502/951/Zoom3/Zoom3_502_Tile007_9511638.png for the tiles.
The mobileworldlive.com page loads several javascript files, including two from gsma.streetmap.co.uk: http://gsma.streetmap.co.uk/custom/barts/gsma/SMJ_GSMA.srf?id=502&layer=951&nd=http://mobileworldlive.com/maps/images/map_na.jpg and http://gsma.streetmap.co.uk/SMJ_ObsEmo.js (The first one has an "include" that loads the second.)
They contain a bunch of custom map display code. I suppose I could try to learn about the API through reading that code, but that seems like a time-consuming and error-prone way to do things if this is implementing an API that's documented somewhere.
Thanks for any suggestions on how to attack this.