mirror of
https://github.com/ClemensFischer/XAML-Map-Control.git
synced 2025-12-06 07:12:04 +01:00
Add LoadBackgroundTiles property
This commit is contained in:
parent
f2204fa6c0
commit
681da9b625
|
|
@ -211,15 +211,12 @@ namespace MapControl
|
|||
}
|
||||
else
|
||||
{
|
||||
var newTiles = new List<Tile>();
|
||||
var minZoomLevel = maxZoomLevel;
|
||||
|
||||
if (this == ParentMap.MapLayer) // load background tiles
|
||||
{
|
||||
minZoomLevel = Math.Max(TileMatrix.ZoomLevel - MaxBackgroundLevels, MinZoomLevel);
|
||||
}
|
||||
var minZoomLevel = LoadBackgroundTiles
|
||||
? Math.Max(TileMatrix.ZoomLevel - MaxBackgroundLevels, MinZoomLevel)
|
||||
: maxZoomLevel;
|
||||
|
||||
var oldTiles = Tiles.Where(t => t.ZoomLevel >= minZoomLevel && t.ZoomLevel <= maxZoomLevel).ToList();
|
||||
var newTiles = new List<Tile>();
|
||||
|
||||
Tiles.Clear();
|
||||
|
||||
|
|
|
|||
|
|
@ -69,7 +69,6 @@ namespace MapControl
|
|||
{
|
||||
RenderTransform = new MatrixTransform();
|
||||
TileImageLoader = tileImageLoader;
|
||||
|
||||
#if WINUI
|
||||
updateTimer = DispatcherQueue.CreateTimer();
|
||||
#endif
|
||||
|
|
@ -177,6 +176,11 @@ namespace MapControl
|
|||
}
|
||||
}
|
||||
|
||||
protected bool LoadBackgroundTiles
|
||||
{
|
||||
get { return this == parentMap?.MapLayer; }
|
||||
}
|
||||
|
||||
private async void OnViewportChanged(object sender, ViewportChangedEventArgs e)
|
||||
{
|
||||
if (Children.Count == 0 || e.ProjectionChanged || Math.Abs(e.LongitudeOffset) > 180d)
|
||||
|
|
|
|||
|
|
@ -126,7 +126,7 @@ namespace MapControl
|
|||
.Where((matrix, i) => i == 0 || matrix.Scale <= maxScale)
|
||||
.ToList();
|
||||
|
||||
if (this != ParentMap.MapLayer) // do not load background tiles
|
||||
if (!LoadBackgroundTiles)
|
||||
{
|
||||
currentMatrixes = currentMatrixes.Skip(currentMatrixes.Count - 1).ToList(); // last element only
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue