ThinkGeo.com    |     Blog    |     Wiki    |     Support

How to implement a TMS client?

 Hi,


I would like to serve TMS tiles in my client. The requirement of the application is to use a 'thin' TMS server (so tiles server via urls).


Normally mapping components like the ComponetOne C1Maps, Telerik RadMap, DeepZoom solve this by providing a way to override the tile fetching method to configure from where and how the tiles are served.


Is this possible using the ThinkGeo Silverlight component?


Thanks,


Andrzej



Andrzej, 
  
   You have a number of option in the Silverlight Edition for consuming data from various services.  The first option is to create your specific Overlay by inheriting from our Overlay class on the Silverlight client side.  In doing this you can control exactly how data is retrieved tile by tile. Actually I think you can create your own tile type and then integrate it with the stock overlay class, I need to find out more about this. Another route would be to create a TMS layer by inheriting from the Layer on the client side.  Layers can go into Overlays so its one level down.  The other advantage of doing the layer is that it can be shared across all of our other Map Suite products such as the Desktop, WPF, and web Edition.  In essence we supply a number of ways to integrate data sources into the product.  We also have a video on integrating your own data sources via layers at the link below.  We do not have a video on doing this with Overlays but it will be similar and we could whip up a sample for you. 
  
 download.thinkgeo.com/Webinars/ExtendingMapSuiteExploringLayers.wmv 
 download.thinkgeo.com/Webinars/ExtendingMapSuite.wmv 
  
 These videos hang off of our Wiki, link below… 
  
 wiki.thinkgeo.com/wiki/Map_Suite_Silverlight_Edition 
  
 David 
  


 Hi David,


Thanks for the answer.


But this means that I would have to esentially implement the tiling myself right? So positioniong of the tiles, handling it across dateline, different zoom levels, stitching and cacheing of tiles etc right?


Andrzej



Andrzej, 
  
   Not exactly, depending on the way you go you would normally be asked to providing an image of a certain pixel size, say 256x256, for a particular world extent.  The rest would be handled by the system such as dateline, caching etc.  Depending on your source you may need to stitch separate requests together to satisfy what we are asking for. 
  
 David

 Hmmm, but most of the time (actually all the time) - you'd need to provide multiple tiles per current extent. So you're saying that functionality is there? All I saw is how to place 1 image, and nothing that would provide the handling for proper TMS placement.


I guess I do not uderstand what you are suggesting, how to go about providing proper TMS tile placement for any extent, at any zoom level...


How does your API facilitate that - other than just providing a method of placing an image in the control?


 


Andrzej



I guess what I’d need to proceed is some high-level outline of the solution you are proposing. How do I go from a TMS structured tile repository (in TMS format - so served from a webserver via URL) - to having them displayed properly (so matching up with the projected space of the control).

Andrzej, 
  
   I guess the first thing is if you checked out the videos I mentioned in the above posts.  If you did and are still a bit confused about how to proceed then I suggest that we setup a conference call so we can exactly answer your questions.  Is this something you are interested in and if so you can e-mail support@thinkgeo.com to setup the date and time. 
  
 David