给定一个由一组点组成的2D多边形,我希望通过多边形的内部画出孵化。所谓孵化,我指的是均匀的空间线,都在45度左右。
我很难想出一种方法,让它工作起来不会很慢,但必须检查每条潜在的线与所有多边形边缘的交集。
有没有人知道如何处理这个问题,或者任何可能有效的现有技术?
谢谢。
发布于 2014-10-08 17:54:21
您可以像这样使用FillPolygon和HatchBrush:
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
//A using statement on the brush will make sure it is disposed.
using (var b1 = new HatchBrush(HatchStyle.ForwardDiagonal, Color.Red))
{
PointF[] points = methodThatReturnsPointsForAPolygon();
e.Graphics.FillPolygon(b1, points);
}
}https://stackoverflow.com/questions/26257440
复制相似问题