Replaced MapRect and Scale by Rect and Point

This commit is contained in:
ClemensFischer 2024-05-19 17:24:18 +02:00
parent dd62545b41
commit 7e18b6b984
32 changed files with 256 additions and 238 deletions

View file

@ -4,6 +4,9 @@
using ProjNet.CoordinateSystems;
using System;
#if !WINUI && !UWP
using System.Windows;
#endif
namespace MapControl.Projections
{
@ -20,11 +23,11 @@ namespace MapControl.Projections
CoordinateSystem = ProjectedCoordinateSystem.WebMercator;
}
public override Scale GetRelativeScale(Location location)
public override Point GetRelativeScale(Location location)
{
var k = 1d / Math.Cos(location.Latitude * Math.PI / 180d); // p.44 (7-3)
return new Scale(k, k);
return new Point(k, k);
}
}
}

View file

@ -3,6 +3,9 @@
// Licensed under the Microsoft Public License (Ms-PL)
using System;
#if !WINUI && !UWP
using System.Windows;
#endif
namespace MapControl.Projections
{
@ -41,13 +44,13 @@ namespace MapControl.Projections
+ "AUTHORITY[\"EPSG\",\"3395\"]]";
}
public override Scale GetRelativeScale(Location location)
public override Point GetRelativeScale(Location location)
{
var lat = location.Latitude * Math.PI / 180d;
var eSinLat = Wgs84Eccentricity * Math.Sin(lat);
var k = Math.Sqrt(1d - eSinLat * eSinLat) / Math.Cos(lat); // p.44 (7-8)
return new Scale(k, k);
return new Point(k, k);
}
}
}