2014-10-19 21:50:23 +02:00
|
|
|
|
// XAML Map Control - http://xamlmapcontrol.codeplex.com/
|
2015-01-20 17:52:02 +01:00
|
|
|
|
// © 2015 Clemens Fischer
|
2014-10-19 21:50:23 +02:00
|
|
|
|
// Licensed under the Microsoft Public License (Ms-PL)
|
|
|
|
|
|
|
|
|
|
|
|
using System.Windows;
|
|
|
|
|
|
using System.Windows.Media;
|
|
|
|
|
|
|
|
|
|
|
|
namespace MapControl
|
|
|
|
|
|
{
|
|
|
|
|
|
public partial class MapRectangle
|
|
|
|
|
|
{
|
2014-12-17 21:38:28 +01:00
|
|
|
|
static partial void ScaleRect(ref Rect rect, ref Transform transform)
|
2014-10-19 21:50:23 +02:00
|
|
|
|
{
|
2014-12-17 21:38:28 +01:00
|
|
|
|
// Scales the RectangleGeometry to compensate inaccurate hit testing in WPF.
|
2014-10-19 21:50:23 +02:00
|
|
|
|
// See http://stackoverflow.com/a/19335624/1136211
|
|
|
|
|
|
|
2014-12-17 21:38:28 +01:00
|
|
|
|
rect.Scale(1e6, 1e6);
|
2014-10-19 21:50:23 +02:00
|
|
|
|
|
2014-12-17 21:38:28 +01:00
|
|
|
|
var scaleTransform = new ScaleTransform(1e-6, 1e-6); // reverts rect scaling
|
2014-10-19 21:50:23 +02:00
|
|
|
|
scaleTransform.Freeze();
|
|
|
|
|
|
|
2014-12-17 21:38:28 +01:00
|
|
|
|
var transformGroup = new TransformGroup();
|
|
|
|
|
|
transformGroup.Children.Add(scaleTransform);
|
|
|
|
|
|
transformGroup.Children.Add(transform);
|
2014-10-19 21:50:23 +02:00
|
|
|
|
|
2014-12-17 21:38:28 +01:00
|
|
|
|
transform = transformGroup;
|
2014-10-19 21:50:23 +02:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|