填充区域,受线条和圆圈限制

时间:2015-10-13 04:02:55

标签: c# winforms graphics

如何填充区域,受圆圈限制(例如)3行?正如你在图片中看到的那样。我可以使用GraphicsPath吗?如果是这样,如何确定,只需要填充圆和线内的区域,而不是圆内和线外的区域?

enter image description here

1 个答案:

答案 0 :(得分:0)

现在我找到了解决方案,首先我需要扩展我的矩形区域然后用圆圈相交。

所以代码是:

GraphicsPath gr = new GraphicsPath();
gr.AddLines(pointsArray);
Region reg = new Region(gr);
GraphicsPath gr2 = new GraphicsPath();
gr2.AddEllipse(circleCenterX, circleCenterY, circleW, circleH);
reg.Intersect(gr2);
e.Graphics.FillRegion(brush, reg); // e is PaintEventArgs