如果我画一条线(假设 ls 只是一个带有一些坐标的线段)。 。 。
Line line = new Line();
String rgb = "#FF0000"; // Red
line.Stroke = (SolidColorBrush)(new BrushConverter().ConvertFrom(rgb));
ls = PlyList[p].L3Ds[seg];
line.X1 = ls.P0.X;
line.Y1 = ls.P0.Y;
line.X2 = ls.P1.X;
line.Y2 = ls.P1.Y;
GeometryCnv.Children.Add(line);
......我得到一条红线。如果我做 。 。 。
Line line = new Line();
String rgb = "#00FF00"; // Green
line.Stroke = (SolidColorBrush)(new BrushConverter().ConvertFrom(rgb));
ls = PlyList[p].L3Ds[seg];
line.X1 = ls.P0.X;
line.Y1 = ls.P0.Y;
line.X2 = ls.P1.X;
line.Y2 = ls.P1.Y;
GeometryCnv.Children.Add(line);
......我得到一条绿线 但如果我同时做两个(使用相同的坐标),我会得到一个棕橙色,好像两条线的颜色混合在一起,好像线条有某种透明度。我想要发生的是最近一行绘制前一行,以便生成的颜色是最近的颜色 - 在这种情况下为绿色。
我需要做些什么来实现这个目标?
答案 0 :(得分:1)
尝试在SnapsToDevicePixels
上将GeometryCnv.
设为真为两行的别名导致您所看到的效果。