我想创建一个函数,它将创建一个三角形,给定一个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