我将视图中的ItemsControl
绑定到List<BezierSeg>
其中
class BezierSeg
{
public Point ControlPoint1 { get; set; }
public Point ControlPoint2 { get; set; }
public Point EndPoint { get; set; }
public Point StartPoint { get; set; }
public Color Color { get; set; }
public SolidColorBrush Brush
{
get
{
return new SolidColorBrush(Color);
}
}
}
...并使用转换器为每个BezierArc创建PathFigure
。
不出所料,与包含绘制复杂路径所需的所有点的单个PathGeometry
相比,这不是非常高效。
但如果我使用后一种方法,我就失去了为每个BezierSeg
提供不同颜色的能力。
有没有办法可以描述PathGeometry
并为这个几何体的不同部分提供不同的颜色?如果没有,我将如何以高性能(我知道,主观)的方式绘制500条bezier曲线,并且能够给出不同颜色的段?