我在C#中繪製了一個圓圈,並且將它分成了一些部分,我想用不同的顏色填充不同的部分,反正有這樣做嗎?以及如何?我嘗試使用fillpie(),但我無法得到參數工作。在視覺工作室C中填充區域#
這裏是代碼:
int r = 150;
g.DrawEllipse(Pens.Black, 300 - r, 250 - r, 2 * r, 2 * r);
if (p != 0)
g.DrawLine(Pens.Black, 300, 250, 300 + r, 250);
double sum;
sum = 0.0;
for (int j = 0; j < p; j++)
sum += data[j].value;
double angle;
angle = 0.0;
for (int i = 0; i < p; i++)
{
angle += (double)(data[i].value/sum) * 2.0 * Math.PI;
textBox1.Text += sum.ToString() + " : " + angle.ToString() + ":" + Math.Cos(angle).ToString() + "\r\n";
g.DrawLine(Pens.Black, 300, 250, 300 + (int)(Math.Cos(angle) * r), 250 - (int)(Math.Sin(angle) * r));
//g.FillPie(Brushes.Black, 300-r , 250 - r, r, r ,(float)(angle),(float)(angle+ (data[i].value /sum) * 2.0 * Math.PI));
}
這實際上劃分圈成不同的部分,我不知道如何來填補他們
的註釋行是我
你試過什麼論點?也許你想編輯你的問題來顯示你的代碼? – anonymous 2010-04-22 08:09:35
Winforms或WPF?請顯示一些代碼。 – 2010-04-22 08:10:11