ESRI map integration

Aug 20, 2010 at 1:26 PM

Any plans to separate out the hard coded dependencies with the Microsoft map control to a generic map interface that can support ESRI or other mapping frameworks out there?

More information on the ESRI map control can be found here:

http://help.arcgis.com/en/webapi/silverlight/index.html

Coordinator
Feb 6, 2011 at 11:15 PM

I'm starting to work this issue.

Coordinator
Feb 24, 2011 at 1:08 AM
Edited Mar 12, 2011 at 5:34 PM

Just determined the formula for converting between ESRI's Map.Resolution and Bing's zoom levels.

zoomLevel = Math.Log((360.0 / 512.0) / map.Resolution) / Math.Log(2) + 1

Really trivial once you understand it. The 360 corresponds to the degree extent and the 512 is the pixel extent at level 1 (see http://msdn.microsoft.com/en-us/library/bb259689.aspx for example). This gives you a Zoom Level of around 1 when zoomed all the way out and a value of around 16 when zoomed in on the ESRI_StreetMap_World_2D. The extra "+ 1" may be from my misunderstanding of level 0 versus level 1.

The MilSym software utilizes non-integral zoom levels.

Unfortunately, when switching to Bing map backgrounds on the ESRI maps, the "+ 1" factor is inadequate. Instead, you have to add another (roughly)  16.7643466889403.

The ESRI and Bing dependencies have now been isolated - there are BingSupport and EsriSupport directories, as well as interface definitions in MilGraph/Support.