Monday 15 February 2016

Can custom map tiles be consumed via ArcObjects within my ArcGIS 10 Desktop AddIn?


Can I programmatically consume and render custom map tiles in ArcMap via our ArcGIS 10 Desktop AddIn?


The AddIn is built using the ArcObjects SDK for C#/.NET and ArcGIS 10. Pulling and rendering map tiles is NOT the AddIn's primary function. But we would definitely like to implement this feature if it can be done.


More specifics:



  • I received a tip that the ITiledMapServer2 interface is involved but it is unclear to me, and there is a dearth of info in ArcObjects docs regarding this task. The equivalent class within the ArcGIS for Flex API is TiledMapServiceLayer, but again this is an ArcMap AddIn in the desktop space, not a web app.


  • We have in-house software to generate our own tiles in the same zoom, tile Y, tile X tiling scheme akin to the Google maps JS/Flash APIs.

  • We are using Apache to serve the map tiles and thus are currently not using ArcGIS Server in any way (i.e. authoring the tiles, publishing as an ArcGIS Server map service, etc).

  • I've posted the question to SO and received a recommendation to post here.


Thank you in advance.



Answer



I think that you're looking at implementing a custom layer. I don't know how else you'd render data inside ArcMap. Outside of a purely academic exercise, I haven't done it. There's a starter page of info available here, with a list of minimal interfaces you'd need to implement. On the plus side, there is a developer sample. The down-side is that you're treading into seriously non-trivial development territory. Fun, but non-trivial.


Or you could look at what the guys on the ArcBruTile codeplex project have done, which looks an awful lot like what you're attempting.


No comments:

Post a Comment

arcpy - Changing output name when exporting data driven pages to JPG?

Is there a way to save the output JPG, changing the output file name to the page name, instead of page number? I mean changing the script fo...