/// <summary> /// Gets <see cref="GeographicMapImagery"/> from specified imagery source, <see cref="GeoImagerySource"/> /// </summary> public static GeographicMapImagery GetGeographicMapImagery(GeoImagerySource imagerySource) { GeoImageryViewModel imageryView = GeoImageryViews.OpenStreetMap.DefaultImageryView; if (imagerySource == GeoImagerySource.BingMapsImagery) { imageryView = GeoImageryViews.BingMaps.StreetImageryView; } else if (imagerySource == GeoImagerySource.MapQuestImagery) { imageryView = GeoImageryViews.MapQuest.StreetImageryView; } else if (imagerySource == GeoImagerySource.EsriMapImagery) { imageryView = GeoImageryViews.Esri.WorldTopographicMap; } else if (imagerySource == GeoImagerySource.OpenStreetMapImagery) { imageryView = GeoImageryViews.OpenStreetMap.DefaultImageryView; } return(GetGeographicMapImagery(imageryView)); }
private void ImageryButton_Click(object sender, RoutedEventArgs e) { var context = (sender as Button).DataContext; var imageryView = (context as GeoImageryViewModel); this.ImageryViewSource = imageryView; }
private void UpdateImageryView(GeoImageryViewModel geoImageryView) { if (this.MagnificationMap != null && geoImageryView != null) { this.MagnificationMap.LoadGeoImagery(geoImageryView); } }
/// <summary> /// Loads geo-imagery from specified imagery view and preserves settings of GeographicTileSeries' TileImagery /// <remarks>Supported imagery views: <see cref="OpenStreetMapImageryView"/>, <see cref="BingMapsImageryView"/>, /// <see cref="EsriMapImageryView"/>, and <see cref="MapQuestImageryView"/></remarks> /// </summary> public static void LoadGeoImagery(this GeographicTileSeries geoSeries, GeoImageryViewModel imageryViewModel) { if (geoSeries == null) { DebugManager.LogWarning("GeoSeriesAdapter cannot load geo-imagery when GeographicTileSeries is null"); return; } //geoSeriesImager.geoSeries = geoSeries; geoSeries.TileImagery.SaveMapImagerySettings(); geoSeries.TileImagery = imageryViewModel.GetGeographicMapImagery(); geoSeries.TileImagery.LoadMapImagerySettings(); }
/// <summary> /// Loads geo-imagery from specified imagery view and preserves settings of XamGeographicMap's BackgroundContent /// <remarks>Supported imagery views: <see cref="OpenStreetMapImageryView"/>, <see cref="BingMapsImageryView"/>, /// <see cref="EsriMapImageryView"/>, and <see cref="MapQuestImageryView"/></remarks> /// </summary> public static void LoadGeoImagery(this XamGeographicMap geoMap, GeoImageryViewModel imageryViewModel) { if (geoMap == null) { DebugManager.LogWarning("GeoMapImager cannot load geo-imagery when XamGeographicMap is null"); return; } GeoMapImager.GeoMap = geoMap; geoMap.SaveMapImagerySettings(); geoMap.BackgroundContent = imageryViewModel.GetGeographicMapImagery(); geoMap.LoadMapImagerySettings(); }
///// <summary> ///// Loads geo-imagery from specified imagery view and preserves settings of GeographicTileSeries' TileImagery ///// <remarks>Supported imagery views: <see cref="OpenStreetMapImageryView"/>, <see cref="BingMapsImageryView"/>, ///// <see cref="EsriMapImageryView"/>, and <see cref="MapQuestImageryView"/></remarks> ///// </summary> //public static void LoadGeoImagery(this GeographicTileSeries geoTileSeries, GeoImageryViewModel imageryViewModel) //{ // if (geoTileSeries == null) // { // DebugManager.LogWarning("GeoMapImager cannot load geo-imagery when GeographicTileSeries is null"); return; // } // geoTileSeries.TileImagery.SaveMapImagerySettings(); // geoTileSeries.TileImagery = imageryViewModel.GetGeographicMapImagery(); // geoTileSeries.TileImagery.LoadMapImagerySettings(); //} //private static bool IsFirstKeyReservedWarning = true; public static void LoadGeoImagery22(this XamGeographicMap geoMap, GeoImageryViewModel imageryViewModel) { if (geoMap == null) { DebugManager.LogWarning("22 XamGeographicMap cannot be null"); return; } GeoMapImager.GeoMap = geoMap; if (geoMap.BackgroundContent is GeographicMapImagery) { (geoMap.BackgroundContent as GeographicMapImagery).SaveMapImagerySettings(); } }
/// <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); }