mirror of
https://github.com/ClemensFischer/XAML-Map-Control.git
synced 2025-12-06 07:12:04 +01:00
Update MapBase.cs
This commit is contained in:
parent
a684b88b5f
commit
9df04db892
|
|
@ -425,6 +425,58 @@ namespace MapControl
|
||||||
return longitude;
|
return longitude;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void SetValueInternal(DependencyProperty property, object value)
|
||||||
|
{
|
||||||
|
internalPropertyChange = true;
|
||||||
|
|
||||||
|
SetValue(property, value);
|
||||||
|
|
||||||
|
internalPropertyChange = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AdjustCenterProperty(DependencyProperty property, ref Location center)
|
||||||
|
{
|
||||||
|
var c = center;
|
||||||
|
|
||||||
|
if (center == null)
|
||||||
|
{
|
||||||
|
center = new Location();
|
||||||
|
}
|
||||||
|
else if (
|
||||||
|
center.Latitude < -maxLatitude || center.Latitude > maxLatitude ||
|
||||||
|
center.Longitude < -180d || center.Longitude > 180d)
|
||||||
|
{
|
||||||
|
center = new Location(
|
||||||
|
Math.Min(Math.Max(center.Latitude, -maxLatitude), maxLatitude),
|
||||||
|
Location.NormalizeLongitude(center.Longitude));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (center != c)
|
||||||
|
{
|
||||||
|
SetValueInternal(property, center);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AdjustZoomLevelProperty(DependencyProperty property, ref double zoomLevel)
|
||||||
|
{
|
||||||
|
if (zoomLevel < MinZoomLevel || zoomLevel > MaxZoomLevel)
|
||||||
|
{
|
||||||
|
zoomLevel = Math.Min(Math.Max(zoomLevel, MinZoomLevel), MaxZoomLevel);
|
||||||
|
|
||||||
|
SetValueInternal(property, zoomLevel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AdjustHeadingProperty(DependencyProperty property, ref double heading)
|
||||||
|
{
|
||||||
|
if (heading < 0d || heading > 360d)
|
||||||
|
{
|
||||||
|
heading = ((heading % 360d) + 360d) % 360d;
|
||||||
|
|
||||||
|
SetValueInternal(property, heading);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void MapLayerPropertyChanged(UIElement oldLayer, UIElement newLayer)
|
private void MapLayerPropertyChanged(UIElement oldLayer, UIElement newLayer)
|
||||||
{
|
{
|
||||||
if (oldLayer != null)
|
if (oldLayer != null)
|
||||||
|
|
@ -489,29 +541,6 @@ namespace MapControl
|
||||||
UpdateTransform();
|
UpdateTransform();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void AdjustCenterProperty(DependencyProperty property, ref Location center)
|
|
||||||
{
|
|
||||||
var c = center;
|
|
||||||
|
|
||||||
if (center == null)
|
|
||||||
{
|
|
||||||
center = new Location();
|
|
||||||
}
|
|
||||||
else if (
|
|
||||||
center.Latitude < -maxLatitude || center.Latitude > maxLatitude ||
|
|
||||||
center.Longitude < -180d || center.Longitude > 180d)
|
|
||||||
{
|
|
||||||
center = new Location(
|
|
||||||
Math.Min(Math.Max(center.Latitude, -maxLatitude), maxLatitude),
|
|
||||||
Location.NormalizeLongitude(center.Longitude));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (center != c)
|
|
||||||
{
|
|
||||||
SetValueInternal(property, center);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void CenterPropertyChanged(Location center)
|
private void CenterPropertyChanged(Location center)
|
||||||
{
|
{
|
||||||
if (!internalPropertyChange)
|
if (!internalPropertyChange)
|
||||||
|
|
@ -604,16 +633,6 @@ namespace MapControl
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void AdjustZoomLevelProperty(DependencyProperty property, ref double zoomLevel)
|
|
||||||
{
|
|
||||||
if (zoomLevel < MinZoomLevel || zoomLevel > MaxZoomLevel)
|
|
||||||
{
|
|
||||||
zoomLevel = Math.Min(Math.Max(zoomLevel, MinZoomLevel), MaxZoomLevel);
|
|
||||||
|
|
||||||
SetValueInternal(property, zoomLevel);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void ZoomLevelPropertyChanged(double zoomLevel)
|
private void ZoomLevelPropertyChanged(double zoomLevel)
|
||||||
{
|
{
|
||||||
if (!internalPropertyChange)
|
if (!internalPropertyChange)
|
||||||
|
|
@ -669,16 +688,6 @@ namespace MapControl
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void AdjustHeadingProperty(DependencyProperty property, ref double heading)
|
|
||||||
{
|
|
||||||
if (heading < 0d || heading > 360d)
|
|
||||||
{
|
|
||||||
heading = ((heading % 360d) + 360d) % 360d;
|
|
||||||
|
|
||||||
SetValueInternal(property, heading);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void HeadingPropertyChanged(double heading)
|
private void HeadingPropertyChanged(double heading)
|
||||||
{
|
{
|
||||||
if (!internalPropertyChange)
|
if (!internalPropertyChange)
|
||||||
|
|
@ -745,15 +754,6 @@ namespace MapControl
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SetValueInternal(DependencyProperty property, object value)
|
|
||||||
{
|
|
||||||
internalPropertyChange = true;
|
|
||||||
|
|
||||||
SetValue(property, value);
|
|
||||||
|
|
||||||
internalPropertyChange = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void UpdateTransform(bool resetTransformCenter = false, bool projectionChanged = false)
|
private void UpdateTransform(bool resetTransformCenter = false, bool projectionChanged = false)
|
||||||
{
|
{
|
||||||
var transformCenterChanged = false;
|
var transformCenterChanged = false;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue