mirror of
https://github.com/ClemensFischer/XAML-Map-Control.git
synced 2025-12-06 07:12:04 +01:00
Version 1.3.10: Minor improvements in TileImageLoader. Removed SurfaceApplication from VS Solution.
This commit is contained in:
parent
09eeb11269
commit
aa04fd0551
|
|
@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
|
||||||
[assembly: AssemblyCompany("Clemens Fischer")]
|
[assembly: AssemblyCompany("Clemens Fischer")]
|
||||||
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyVersion("1.3.9")]
|
[assembly: AssemblyVersion("1.3.10")]
|
||||||
[assembly: AssemblyFileVersion("1.3.9")]
|
[assembly: AssemblyFileVersion("1.3.10")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
|
||||||
[assembly: AssemblyCompany("Clemens Fischer")]
|
[assembly: AssemblyCompany("Clemens Fischer")]
|
||||||
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyVersion("1.3.9")]
|
[assembly: AssemblyVersion("1.3.10")]
|
||||||
[assembly: AssemblyFileVersion("1.3.9")]
|
[assembly: AssemblyFileVersion("1.3.10")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
# Visual Studio 2012
|
# Visual Studio 2012
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FileDbCache", "Caching\FileDbCache\FileDbCache.csproj", "{EF44F661-B98A-4676-927F-85D138F82300}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FileDbCache", "Caching\FileDbCache\FileDbCache.csproj", "{EF44F661-B98A-4676-927F-85D138F82300}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SurfaceApplication", "SampleApps\SurfaceApplication\SurfaceApplication.csproj", "{6285FB9D-B7EA-469A-B464-224077967167}"
|
|
||||||
EndProject
|
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageFileCache", "Caching\ImageFileCache\ImageFileCache.csproj", "{86470440-FEE2-4120-AF5A-3762FB9C536F}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageFileCache", "Caching\ImageFileCache\ImageFileCache.csproj", "{86470440-FEE2-4120-AF5A-3762FB9C536F}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SilverlightApplication", "SampleApps\SilverlightApplication\SilverlightApplication.csproj", "{CBA8C535-CCA3-4F60-8D3E-0E25791CBD21}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SilverlightApplication", "SampleApps\SilverlightApplication\SilverlightApplication.csproj", "{CBA8C535-CCA3-4F60-8D3E-0E25791CBD21}"
|
||||||
|
|
@ -31,10 +29,6 @@ Global
|
||||||
{EF44F661-B98A-4676-927F-85D138F82300}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{EF44F661-B98A-4676-927F-85D138F82300}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{EF44F661-B98A-4676-927F-85D138F82300}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{EF44F661-B98A-4676-927F-85D138F82300}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{EF44F661-B98A-4676-927F-85D138F82300}.Release|Any CPU.Build.0 = Release|Any CPU
|
{EF44F661-B98A-4676-927F-85D138F82300}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
{6285FB9D-B7EA-469A-B464-224077967167}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
||||||
{6285FB9D-B7EA-469A-B464-224077967167}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
||||||
{6285FB9D-B7EA-469A-B464-224077967167}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
||||||
{6285FB9D-B7EA-469A-B464-224077967167}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
||||||
{86470440-FEE2-4120-AF5A-3762FB9C536F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
{86470440-FEE2-4120-AF5A-3762FB9C536F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{86470440-FEE2-4120-AF5A-3762FB9C536F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{86470440-FEE2-4120-AF5A-3762FB9C536F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{86470440-FEE2-4120-AF5A-3762FB9C536F}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{86470440-FEE2-4120-AF5A-3762FB9C536F}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,8 @@ using System.Windows;
|
||||||
[assembly: AssemblyCompany("Clemens Fischer")]
|
[assembly: AssemblyCompany("Clemens Fischer")]
|
||||||
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyVersion("1.3.9")]
|
[assembly: AssemblyVersion("1.3.10")]
|
||||||
[assembly: AssemblyFileVersion("1.3.9")]
|
[assembly: AssemblyFileVersion("1.3.10")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
|
|
|
||||||
|
|
@ -24,13 +24,16 @@ namespace MapControl
|
||||||
this.tileLayer = tileLayer;
|
this.tileLayer = tileLayer;
|
||||||
}
|
}
|
||||||
|
|
||||||
internal void BeginGetTiles(IEnumerable<Tile> tiles)
|
internal void StartGetTiles(IEnumerable<Tile> tiles)
|
||||||
{
|
{
|
||||||
foreach (var tile in tiles.Where(t => !t.HasImage))
|
foreach (var tile in tiles)
|
||||||
{
|
{
|
||||||
var uri = tileLayer.TileSource.GetUri(tile.XIndex, tile.Y, tile.ZoomLevel);
|
var uri = tileLayer.TileSource.GetUri(tile.XIndex, tile.Y, tile.ZoomLevel);
|
||||||
|
|
||||||
tile.SetImageSource(new BitmapImage(uri), true);
|
if (uri != null)
|
||||||
|
{
|
||||||
|
tile.SetImageSource(new BitmapImage(uri), tileLayer.AnimateTileOpacity);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -71,9 +71,12 @@ namespace MapControl
|
||||||
this.tileLayer = tileLayer;
|
this.tileLayer = tileLayer;
|
||||||
}
|
}
|
||||||
|
|
||||||
internal void BeginGetTiles(IEnumerable<Tile> tiles)
|
internal void StartGetTiles(IEnumerable<Tile> tiles)
|
||||||
{
|
{
|
||||||
ThreadPool.QueueUserWorkItem(BeginGetTilesAsync, new List<Tile>(tiles.Where(t => !t.HasImage)));
|
if (tiles.Any())
|
||||||
|
{
|
||||||
|
ThreadPool.QueueUserWorkItem(GetTilesAsync, tiles.ToList());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
internal void CancelGetTiles()
|
internal void CancelGetTiles()
|
||||||
|
|
@ -87,15 +90,15 @@ namespace MapControl
|
||||||
return string.Format("{0}/{1}/{2}/{3}", tileLayer.SourceName, tile.ZoomLevel, tile.XIndex, tile.Y);
|
return string.Format("{0}/{1}/{2}/{3}", tileLayer.SourceName, tile.ZoomLevel, tile.XIndex, tile.Y);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void BeginGetTilesAsync(object newTilesList)
|
private void GetTilesAsync(object tileList)
|
||||||
{
|
{
|
||||||
var newTiles = (List<Tile>)newTilesList;
|
var tiles = (List<Tile>)tileList;
|
||||||
var imageTileSource = tileLayer.TileSource as ImageTileSource;
|
var imageTileSource = tileLayer.TileSource as ImageTileSource;
|
||||||
var animateOpacity = tileLayer.AnimateTileOpacity;
|
var animateOpacity = tileLayer.AnimateTileOpacity;
|
||||||
|
|
||||||
if (imageTileSource != null && !imageTileSource.CanLoadAsync)
|
if (imageTileSource != null && !imageTileSource.CanLoadAsync)
|
||||||
{
|
{
|
||||||
foreach (var tile in newTiles)
|
foreach (var tile in tiles)
|
||||||
{
|
{
|
||||||
tileLayer.Dispatcher.BeginInvoke(
|
tileLayer.Dispatcher.BeginInvoke(
|
||||||
(Action<Tile, ImageTileSource>)((t, ts) => t.SetImageSource(ts.LoadImage(t.XIndex, t.Y, t.ZoomLevel), animateOpacity)),
|
(Action<Tile, ImageTileSource>)((t, ts) => t.SetImageSource(ts.LoadImage(t.XIndex, t.Y, t.ZoomLevel), animateOpacity)),
|
||||||
|
|
@ -108,9 +111,9 @@ namespace MapControl
|
||||||
!tileLayer.TileSource.UriFormat.StartsWith("file://") &&
|
!tileLayer.TileSource.UriFormat.StartsWith("file://") &&
|
||||||
!string.IsNullOrWhiteSpace(tileLayer.SourceName))
|
!string.IsNullOrWhiteSpace(tileLayer.SourceName))
|
||||||
{
|
{
|
||||||
var outdatedTiles = new List<Tile>(newTiles.Count);
|
var outdatedTiles = new List<Tile>(tiles.Count);
|
||||||
|
|
||||||
foreach (var tile in newTiles)
|
foreach (var tile in tiles)
|
||||||
{
|
{
|
||||||
var key = GetCacheKey(tile);
|
var key = GetCacheKey(tile);
|
||||||
var buffer = Cache.Get(key) as byte[];
|
var buffer = Cache.Get(key) as byte[];
|
||||||
|
|
@ -136,10 +139,10 @@ namespace MapControl
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
newTiles = outdatedTiles; // enqueue outdated tiles at last
|
tiles = outdatedTiles; // enqueue outdated tiles at last
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var tile in newTiles)
|
foreach (var tile in tiles)
|
||||||
{
|
{
|
||||||
pendingTiles.Enqueue(tile);
|
pendingTiles.Enqueue(tile);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -96,7 +96,7 @@ namespace MapControl
|
||||||
{
|
{
|
||||||
SelectTiles();
|
SelectTiles();
|
||||||
RenderTiles();
|
RenderTiles();
|
||||||
tileImageLoader.BeginGetTiles(tiles);
|
tileImageLoader.StartGetTiles(tiles.Where(t => !t.HasImage));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,6 @@ namespace MapControl
|
||||||
|
|
||||||
private Func<int, int, int, Uri> getUri;
|
private Func<int, int, int, Uri> getUri;
|
||||||
private string uriFormat = string.Empty;
|
private string uriFormat = string.Empty;
|
||||||
private int hostIndex = -1;
|
|
||||||
|
|
||||||
public TileSource()
|
public TileSource()
|
||||||
{
|
{
|
||||||
|
|
@ -103,7 +102,7 @@ namespace MapControl
|
||||||
|
|
||||||
private Uri GetOpenStreetMapUri(int x, int y, int zoomLevel)
|
private Uri GetOpenStreetMapUri(int x, int y, int zoomLevel)
|
||||||
{
|
{
|
||||||
hostIndex = (hostIndex + 1) % 3;
|
var hostIndex = (x + y + zoomLevel) % 3;
|
||||||
|
|
||||||
return new Uri(UriFormat.
|
return new Uri(UriFormat.
|
||||||
Replace("{c}", "abc".Substring(hostIndex, 1)).
|
Replace("{c}", "abc".Substring(hostIndex, 1)).
|
||||||
|
|
@ -114,7 +113,7 @@ namespace MapControl
|
||||||
|
|
||||||
private Uri GetGoogleMapsUri(int x, int y, int zoomLevel)
|
private Uri GetGoogleMapsUri(int x, int y, int zoomLevel)
|
||||||
{
|
{
|
||||||
hostIndex = (hostIndex + 1) % 4;
|
var hostIndex = (x + y + zoomLevel) % 4;
|
||||||
|
|
||||||
return new Uri(UriFormat.
|
return new Uri(UriFormat.
|
||||||
Replace("{i}", hostIndex.ToString()).
|
Replace("{i}", hostIndex.ToString()).
|
||||||
|
|
@ -125,7 +124,7 @@ namespace MapControl
|
||||||
|
|
||||||
private Uri GetMapQuestUri(int x, int y, int zoomLevel)
|
private Uri GetMapQuestUri(int x, int y, int zoomLevel)
|
||||||
{
|
{
|
||||||
hostIndex = (hostIndex % 4) + 1;
|
var hostIndex = (x + y + zoomLevel) % 4 + 1;
|
||||||
|
|
||||||
return new Uri(UriFormat.
|
return new Uri(UriFormat.
|
||||||
Replace("{n}", hostIndex.ToString()).
|
Replace("{n}", hostIndex.ToString()).
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
|
||||||
[assembly: AssemblyCompany("Clemens Fischer")]
|
[assembly: AssemblyCompany("Clemens Fischer")]
|
||||||
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyVersion("1.3.9")]
|
[assembly: AssemblyVersion("1.3.10")]
|
||||||
[assembly: AssemblyFileVersion("1.3.9")]
|
[assembly: AssemblyFileVersion("1.3.10")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
|
||||||
[assembly: AssemblyCompany("Clemens Fischer")]
|
[assembly: AssemblyCompany("Clemens Fischer")]
|
||||||
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyVersion("1.3.9")]
|
[assembly: AssemblyVersion("1.3.10")]
|
||||||
[assembly: AssemblyFileVersion("1.3.9")]
|
[assembly: AssemblyFileVersion("1.3.10")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
|
|
|
||||||
|
|
@ -157,7 +157,7 @@
|
||||||
Value="{Binding Opacity, ElementName=mapImage, Mode=TwoWay}"/>
|
Value="{Binding Opacity, ElementName=mapImage, Mode=TwoWay}"/>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<CheckBox Margin="5" VerticalAlignment="Bottom" Content="Seamarks" Click="SeamarksClick"/>
|
<CheckBox Margin="5" VerticalAlignment="Bottom" Content="Seamarks" Click="SeamarksClick"/>
|
||||||
<ComboBox Margin="5" VerticalAlignment="Bottom" Width="120" SelectedIndex="0" SelectionChanged="TileLayerSelectionChanged">
|
<ComboBox x:Name="tileLayerComboBox" Margin="5" VerticalAlignment="Bottom" Width="120" SelectionChanged="TileLayerSelectionChanged">
|
||||||
<sys:String>OpenStreetMap</sys:String>
|
<sys:String>OpenStreetMap</sys:String>
|
||||||
<sys:String>OpenCycleMap</sys:String>
|
<sys:String>OpenCycleMap</sys:String>
|
||||||
<sys:String>OCM Transport</sys:String>
|
<sys:String>OCM Transport</sys:String>
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@ namespace SilverlightApplication
|
||||||
public MainPage()
|
public MainPage()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
tileLayerComboBox.SelectedIndex = 0;
|
||||||
|
|
||||||
var polylines = (ICollection<object>)Resources["Polylines"];
|
var polylines = (ICollection<object>)Resources["Polylines"];
|
||||||
polylines.Add(
|
polylines.Add(
|
||||||
|
|
@ -133,14 +134,11 @@ namespace SilverlightApplication
|
||||||
}
|
}
|
||||||
|
|
||||||
private void TileLayerSelectionChanged(object sender, SelectionChangedEventArgs e)
|
private void TileLayerSelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||||
{
|
|
||||||
if (map != null)
|
|
||||||
{
|
{
|
||||||
var comboBox = (ComboBox)sender;
|
var comboBox = (ComboBox)sender;
|
||||||
var tileLayers = (TileLayerCollection)Resources["TileLayers"];
|
var tileLayers = (TileLayerCollection)Resources["TileLayers"];
|
||||||
map.TileLayer = tileLayers[(string)comboBox.SelectedItem];
|
map.TileLayer = tileLayers[(string)comboBox.SelectedItem];
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private void SeamarksClick(object sender, RoutedEventArgs e)
|
private void SeamarksClick(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
|
||||||
[assembly: AssemblyCompany("Clemens Fischer")]
|
[assembly: AssemblyCompany("Clemens Fischer")]
|
||||||
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyVersion("1.3.9")]
|
[assembly: AssemblyVersion("1.3.10")]
|
||||||
[assembly: AssemblyFileVersion("1.3.9")]
|
[assembly: AssemblyFileVersion("1.3.10")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
|
|
|
||||||
|
|
@ -185,7 +185,7 @@
|
||||||
<Slider Margin="10,-10,10,-10" Width="200" Value="50" ValueChanged="ImageOpacitySliderValueChanged"/>
|
<Slider Margin="10,-10,10,-10" Width="200" Value="50" ValueChanged="ImageOpacitySliderValueChanged"/>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<CheckBox Margin="10" VerticalAlignment="Center" Content="Seamarks" Click="SeamarksClick"/>
|
<CheckBox Margin="10" VerticalAlignment="Center" Content="Seamarks" Click="SeamarksClick"/>
|
||||||
<ComboBox Margin="10" Width="200" VerticalAlignment="Center" SelectedIndex="0" SelectionChanged="TileLayerSelectionChanged">
|
<ComboBox x:Name="tileLayerComboBox" Margin="10" Width="200" VerticalAlignment="Center" SelectionChanged="TileLayerSelectionChanged">
|
||||||
<ComboBoxItem>OpenStreetMap</ComboBoxItem>
|
<ComboBoxItem>OpenStreetMap</ComboBoxItem>
|
||||||
<ComboBoxItem>OpenCycleMap</ComboBoxItem>
|
<ComboBoxItem>OpenCycleMap</ComboBoxItem>
|
||||||
<ComboBoxItem>OCM Transport</ComboBoxItem>
|
<ComboBoxItem>OCM Transport</ComboBoxItem>
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@ namespace StoreApplication
|
||||||
public MainPage()
|
public MainPage()
|
||||||
{
|
{
|
||||||
this.InitializeComponent();
|
this.InitializeComponent();
|
||||||
|
tileLayerComboBox.SelectedIndex = 0;
|
||||||
|
|
||||||
var polylines = (ICollection<object>)Resources["Polylines"];
|
var polylines = (ICollection<object>)Resources["Polylines"];
|
||||||
polylines.Add(
|
polylines.Add(
|
||||||
|
|
@ -142,13 +143,10 @@ namespace StoreApplication
|
||||||
}
|
}
|
||||||
|
|
||||||
private void TileLayerSelectionChanged(object sender, SelectionChangedEventArgs e)
|
private void TileLayerSelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||||
{
|
|
||||||
if (map != null)
|
|
||||||
{
|
{
|
||||||
var comboBox = (ComboBox)sender;
|
var comboBox = (ComboBox)sender;
|
||||||
var tileLayers = (TileLayerCollection)Resources["TileLayers"];
|
var tileLayers = (TileLayerCollection)Resources["TileLayers"];
|
||||||
map.TileLayer = tileLayers[(string)((ComboBoxItem)comboBox.SelectedItem).Content];
|
map.TileLayer = tileLayers[(string)((ComboBoxItem)comboBox.SelectedItem).Content];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
|
||||||
[assembly: AssemblyCompany("Clemens Fischer")]
|
[assembly: AssemblyCompany("Clemens Fischer")]
|
||||||
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyVersion("1.3.9")]
|
[assembly: AssemblyVersion("1.3.10")]
|
||||||
[assembly: AssemblyFileVersion("1.3.9")]
|
[assembly: AssemblyFileVersion("1.3.10")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
|
||||||
[assembly: AssemblyCompany("Clemens Fischer")]
|
[assembly: AssemblyCompany("Clemens Fischer")]
|
||||||
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyVersion("1.3.9")]
|
[assembly: AssemblyVersion("1.3.10")]
|
||||||
[assembly: AssemblyFileVersion("1.3.9")]
|
[assembly: AssemblyFileVersion("1.3.10")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@
|
||||||
<!--<map:TileLayer SourceName="Google Maps" Description="Google Maps - © {y} Google"
|
<!--<map:TileLayer SourceName="Google Maps" Description="Google Maps - © {y} Google"
|
||||||
TileSource="http://mt{i}.google.com/vt/x={x}&y={y}&z={z}" MaxZoomLevel="20"/>
|
TileSource="http://mt{i}.google.com/vt/x={x}&y={y}&z={z}" MaxZoomLevel="20"/>
|
||||||
<map:TileLayer SourceName="Google Images" Description="Google Maps - © {y} Google" Background="#FF3F3F3F" Foreground="White"
|
<map:TileLayer SourceName="Google Images" Description="Google Maps - © {y} Google" Background="#FF3F3F3F" Foreground="White"
|
||||||
TileSource="http://khm{i}.google.com/kh/v=123&x={x}&y={y}&z={z}" MaxZoomLevel="20"/>
|
TileSource="http://khm{i}.google.com/kh/v=135&x={x}&y={y}&z={z}" MaxZoomLevel="20"/>
|
||||||
<map:TileLayer SourceName="Bing Maps" Description="Bing Maps - © {y} Microsoft Corporation"
|
<map:TileLayer SourceName="Bing Maps" Description="Bing Maps - © {y} Microsoft Corporation"
|
||||||
TileSource="http://ecn.t{i}.tiles.virtualearth.net/tiles/r{q}.png?g=0&stl=h" MaxZoomLevel="20"/>
|
TileSource="http://ecn.t{i}.tiles.virtualearth.net/tiles/r{q}.png?g=0&stl=h" MaxZoomLevel="20"/>
|
||||||
<map:TileLayer SourceName="Bing Images" Description="Bing Maps - © {y} Microsoft Corporation" Background="#FF3F3F3F" Foreground="White"
|
<map:TileLayer SourceName="Bing Images" Description="Bing Maps - © {y} Microsoft Corporation" Background="#FF3F3F3F" Foreground="White"
|
||||||
|
|
@ -152,7 +152,7 @@
|
||||||
|
|
||||||
<!-- experimental WMS map layers -->
|
<!-- experimental WMS map layers -->
|
||||||
<!--<map:MapImageLayer Opacity="0.5"
|
<!--<map:MapImageLayer Opacity="0.5"
|
||||||
UriFormat="http://129.206.228.72/cached/osm?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=osm_auto:all&STYLES=&SRS=EPSG:900913&BBOX={W},{S},{E},{N}&WIDTH={X}&HEIGHT={Y}&FORMAT=image/png"/>-->
|
UriFormat="http://watzmann-geog.urz.uni-heidelberg.de/cached/osm?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=osm_auto:all&STYLES=&SRS=EPSG:900913&BBOX={W},{S},{E},{N}&WIDTH={X}&HEIGHT={Y}&FORMAT=image/png"/>-->
|
||||||
<!--<map:MapImageLayer Opacity="0.5"
|
<!--<map:MapImageLayer Opacity="0.5"
|
||||||
UriFormat="http://ows.terrestris.de/osm-basemap/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=OSM-WMS-Deutschland&STYLES=&SRS=EPSG:900913&BBOX={W},{S},{E},{N}&WIDTH={X}&HEIGHT={Y}&FORMAT=image/png"/>-->
|
UriFormat="http://ows.terrestris.de/osm-basemap/service?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=OSM-WMS-Deutschland&STYLES=&SRS=EPSG:900913&BBOX={W},{S},{E},{N}&WIDTH={X}&HEIGHT={Y}&FORMAT=image/png"/>-->
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
|
||||||
[assembly: AssemblyCompany("Clemens Fischer")]
|
[assembly: AssemblyCompany("Clemens Fischer")]
|
||||||
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyVersion("1.3.9")]
|
[assembly: AssemblyVersion("1.3.10")]
|
||||||
[assembly: AssemblyFileVersion("1.3.9")]
|
[assembly: AssemblyFileVersion("1.3.10")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
// <auto-generated>
|
// <auto-generated>
|
||||||
// This code was generated by a tool.
|
// This code was generated by a tool.
|
||||||
// Runtime Version:4.0.30319.18046
|
// Runtime Version:4.0.30319.18051
|
||||||
//
|
//
|
||||||
// Changes to this file may cause incorrect behavior and will be lost if
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
// the code is regenerated.
|
// the code is regenerated.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue