我想創建一個函數,它將創建一個三角形,給定一個Rectangle
結構。我有以下代碼:在GDI +中繪製一個三角形給定一個矩形
public enum Direction {
Up,
Right,
Down,
Left
}
private void DrawTriangle(Graphics g, Rectangle r, Direction direction)
{
if (direction == Direction.Up) {
int half = r.Width/2;
g.DrawLine(Pens.Black, r.X, r.Y + r.Height, r.X + Width, r.Y + r.Height); // base
g.DrawLine(Pens.Black, r.X, r.Y + r.Height, r.X + half, r.Y); // left side
g.DrawLine(Pens.Black, r.X + r.Width, r.Y + r.Height, r.X + half, r.Y); // right side
}
}
只要方向朝上,這就行得通了。但我有兩個問題。首先,有沒有辦法總是把它畫出來,但分別旋轉0,90,180或270度,以免不必使用四個if
陳述?其次,我怎樣才能用黑色填充三角形?
我建議調用'DrawPolygon'方法來繪製和填充三角形。 – adatapost