6

My customer requirement is to support a MrSID image directly in ArcGIS Mobile.

The details are sketchy but I think the intent is that they want a local background raster Map while the ESRI.ArcGIS.Mobile.Map gets used to handle other tasks (?vector display, updating GDB?).

The Map control seems designed to consume Map Services via the MapCache object. Is there any way to get the MrSID image to render, pan and zoom in ArcGIS Mobile?

A "How to" reference is perhaps too much to hope for. But I'll appreciate any related suggestions. For example, how might we use a local TIFF or JPEG image as the background map?


The control that renders for us in ArcGIS Mobile is ESRI.ArcGIS.Mobile.Map. This control exposes a “Layers” property which is a collection of MapLayers. If we make a custom MapLayer that knows how to decode a MrSID file, it can read a local file, decode it and blit the pixels to the screen via it's overriden Draw() method.

The difficulty, of course, is that there is currently no Native ARM or pure Managed SDK that will do this. But if we work through that, then we could solve the integration problem. The 9.3.1 Mobile SDK includes a sample called LiveTraffic that illustrates the technique: derive a custom MapLayer and override the Draw() method().

1 Answer 1

3

As far as I can recall the only way would be to create a cached base map that is distributed to the device when the application is installed. So I would suggest looking at how to convert the data to a MapCache that you can distribute on to the device.

2
  • Thanks very much for this response, Mathias. Converting the MrSID image to lots of small raster tiles seems to be the preferred solution (preferred at least by ESRI ... the customer has a different perspective) That said, I did get some help from Redlands which I'll relay as a separate Answer in the hopes that it helps someone else.
    – Michael Rosen
    Oct 25, 2010 at 18:19
  • @Michael-Rosen, We looked at it when we started looking for a MapObjects Java replacement, but it felt like it would never grow enough to solve all our client requirements. We ended up with ArcGIS Engine. Oct 25, 2010 at 20:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.