画两个半圆

Tom*_*tom -1 c# winforms

我想用两个半圆填充一个圆。一个在左侧,另一个在右侧。左侧的圆圈应为黑色,另一侧的圆圈应为蓝色。

我该如何实现这一目标?我尝试填充一个椭圆,然后在它的一半上绘制一个矩形。这适用于圆的一半。但对于另一半我有一个问题。

有什么想法如何绘制完整的圆吗?

ser*_*0ne 5

您可以使用Graphics.DrawArc它来实现此目的。

创建一个 Windows 窗体应用程序并将此代码放入窗体中进行测试。

protected override void OnPaint(PaintEventArgs e)
{
    base.OnPaint(e);
    Rectangle rect = new Rectangle(10, 10, 320, 320);
    e.Graphics.DrawArc(new Pen(new SolidBrush(Color.Black), 10), rect, 90, 180);
    e.Graphics.DrawArc(new Pen(new SolidBrush(Color.Blue), 10), rect, 270, 180);
}
Run Code Online (Sandbox Code Playgroud)

然后更改矩形坐标以满足您的需要。

您可能想要查看的其他内容是DrawPie,,FillPie。从逻辑上思考,一个有两半的馅饼“应该”画出两个实心的半圆。上面的例子只是画了两个半圆的轮廓。