多边形选择

时间:2017-03-27 04:59:34

标签: c# wpf gmap.net

我使用的是GMaps.net的WPF版本。某些功能,如多边形选择并不那么明显。

我需要做的是检测地图上的多边形单击,然后更改多边形的属性(不透明度等)以显示它已被选中。实现这一目标的一种自定义方法是通过鼠标点击事件获取鼠标坐标,并使用一些矢量数学进行多边形交叉测试,但是我确定必须有内置方法来执行此操作吗?

为清楚起见,这就是我创建多边形的方法:

        GMapPolygon polygon = new GMapPolygon(polyPointList);
        polygon.RegenerateShape(gMapControl1);
        (polygon.Shape as Path).Stroke = Brushes.DarkBlue;
        (polygon.Shape as Path).Opacity = 0.5;
        gMapControl1.Markers.Add(polygon);

1 个答案:

答案 0 :(得分:1)

我相信你是对的,多边形的WPF版本并没有开箱即用。

认为您可以使用点击的PointLatLng并检查它是否在多边形的范围内。取the WinForms version of it并进行调整。最后,这只是缺乏数学的那一点。