在 GMap.NET.WindowsPresentation 中设置路线颜色

Set Route Color in GMap.NET.WindowsPresentation

我使用的是 Gmap.NET 的 WPF 版本。

这感觉像是一个愚蠢的问题....但我不知道如何更改路线的笔画 color/width。

在 winforms 中,GMapRoute 具有 属性 可以按您期望的方式设置的行程

GMapRoute r = new GMapRoute(route.Points, "My route");
r.Stroke.Width = 2;
r.Stroke.Color = Color.TurdBrown;

WPF版本好像很不一样,搞不懂

我可以使用转换访问这些属性,这是我的代码:

GMapRoute mRoute = new GMapRoute(route.Points);
mRoute.RegenerateShape(MainMap);
((System.Windows.Shapes.Path)mRoute.Shape).Stroke = new SolidColorBrush(Colors.Red);
((System.Windows.Shapes.Path) mRoute.Shape).StrokeThickness = 20;

首先我创建了 GMapRoute,然后我在地图中生成了它的形状,然后我修改了改变颜色和厚度的形状。

希望对您有所帮助

我认为使用 RegenerateShape 创建形状对性能不利。 最好在将路线添加到地图之前设置线条样式。

List<PointLatLng> routePath = List<PointLatLng>();
routePath.Add(new PointLatLng(Lat1,Lon1));
....
routePath.Add(new PointLatLng(LatN,LonN));
GMapRoute groute = new GMapRoute(routePath);
groute.Shape = new Path() { Stroke = new SolidColorBrush(Colors.Red), StrokeThickness = 4 };
map.Markers.Add(groute);