Exemple #1
0
        public static GeoImageryViewModel GetGeoImageryViewModel(this XamGeographicMap geoMap)
        {
            var geoImagerySource = geoMap.GetGeoImagerySource();
            GeoImageryViewModel geoImageryView = new OpenStreetMapImageryView();

            if (geoImagerySource == GeoImagerySource.OpenStreetMapImagery)
            {
                geoImageryView = new OpenStreetMapImageryView();
            }
            //TODO: might require refactoring based on how MapQuestImagery is implemented in XamGeoMap
            else if (geoImagerySource == GeoImagerySource.MapQuestImagery)
            {
                if (geoMap.BackgroundContent is MapQuestStreetImagery)
                {
                    geoImageryView = new MapQuestStreetImageryView();
                }
                else // if(geoMap.BackgroundContent is MapQuestStreetImagery)
                {
                    geoImageryView = new MapQuestSatelliteImageryView();
                }
            }
            else if (geoImagerySource == GeoImagerySource.BingMapsImagery)
            {
                var geoImagery = geoMap.BackgroundContent as BingMapsMapImagery;
                var style      = geoImagery.GetImageryStyle();
                geoImageryView = new BingMapsImageryView(style);
            }
            else if (geoImagerySource == GeoImagerySource.EsriMapImagery)
            {
                var geoImagery = geoMap.BackgroundContent as ArcGISOnlineMapImagery;
                //var style = geoImagery.GetImageryStyle();
                //geoImageryView = new BingMapsImageryView(style);
                //TODO: add ESRI
            }
            return(geoImageryView);
        }