public static IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle GetImageryStyle2(this BingMapsMapImagery geoImagery) { var style = IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle.StreetMapStyle; if (geoImagery.TilePath.Contains("tiles/r")) { style = IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle.StreetMapStyle; } else if (geoImagery.TilePath.Contains("tiles/h")) { style = IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle.SatelliteMapStyle; } else if (geoImagery.TilePath.Contains("tiles/a")) { style = IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle.SatelliteNoLabelsMapStyle; } return(style); }
/// <summary> /// Creates <see cref="GeographicMapImagery"/> from specified imagery view model, <see cref="GeoImageryViews"/> /// </summary> public static GeographicMapImagery GetGeographicMapImagery(GeoImageryViewModel imageryViewModel) { GeographicMapImagery geoImagery = new OpenStreetMapImagery(); #region Open Street Map Imagery if (imageryViewModel.ImagerySource == GeoImagerySource.OpenStreetMapImagery && OpenStreetMapImageryConfig.ImageryIsEnabled) { geoImagery = new OpenStreetMapImagery(); } #endregion #region ESRI Map Imagery else if (imageryViewModel.ImagerySource == GeoImagerySource.EsriMapImagery && EsriMapImageryConfig.ImageryIsEnabled) { var vm = (EsriMapImageryView)imageryViewModel; geoImagery = new ArcGISOnlineMapImagery { MapServerUri = vm.ImageryServer }; } #endregion #region Map Quest Imagery else if (imageryViewModel.ImagerySource == GeoImagerySource.MapQuestImagery && MapQuestImageryConfig.ImageryIsEnabled) { var vm = (MapQuestImageryView)imageryViewModel; if (vm.ImageryStyle == MapQuestImageryStyle.StreetMapStyle) { geoImagery = new MapQuestStreetImagery(); } else if (vm.ImageryStyle == MapQuestImageryStyle.SatelliteMapStyle) { geoImagery = new MapQuestSatelliteImagery(); } } #endregion #region Bing Map Imagery else if (imageryViewModel.ImagerySource == GeoImagerySource.BingMapsImagery && BingMapImageryConfig.ImageryIsEnabled) { var vm = (BingMapsImageryView)imageryViewModel; var geoImageryStyle = (Infragistics.Controls.Maps.BingMapsImageryStyle)vm.ImageryStyle; if (vm.ImageryKey == string.Empty) { vm.ImageryKey = BingMapImageryConfig.ImageryKey; } if (vm.IsImageryKeyValid()) { geoImagery = new BingMapsMapImagery { ImageryStyle = geoImageryStyle, ApiKey = vm.ImageryKey }; } else { DebugManager.LogWarning("Geographic Imagery view model is missing key for Bing Map!"); } //var bingMapsConnector = new BingMapsConnector(); // //bingMapsConnector.ImageryInitialized += (o, e) => // //{ // // var connector = (BingMapsConnector)o; // // geoMap.BackgroundContent = // // new BingMapsMapImagery() // // { // // TilePath = connector.TilePath, // // SubDomains = connector.SubDomains // // }; // //}; //bingMapsConnector.ImageryInitialized += OnImageryInitialized; //bingMapsConnector.ImageryStyle = vm.ImageryStyle; //bingMapsConnector.ApiKey = vm.ImageryKey; //bingMapsConnector.Initialize(); } #endregion return(geoImagery); }
public static IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle GetImageryStyle(this BingMapsMapImagery geoImagery) { var style = IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle.StreetMapStyle; // TODO refractor using list of BingMapsImageryViews if (geoImagery.ImageryStyle == BingMapsImageryStyle.Road) { style = IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle.StreetMapStyle; } else if (geoImagery.ImageryStyle == BingMapsImageryStyle.AerialWithLabels) { style = IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle.SatelliteMapStyle; } else if (geoImagery.ImageryStyle == BingMapsImageryStyle.Aerial) { style = IGExtensions.Common.Maps.Imagery.BingMapsImageryStyle.SatelliteNoLabelsMapStyle; } return(style); }