構造を指定して、三角形を作成する関数を作成しようとしていますRectangle
。私は次のコードを持っています:
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
}
}
方向が上にある限り、これは機能します。しかし、私には2つの問題があります。if
まず、常に作成する方法はありますが、4つのステートメントを使用する必要がないように、それぞれ0、90、180、または270度回転させるだけです。次に、三角形を黒色で塗りつぶすにはどうすればよいですか?