長方形(つまり三角形)の左下半分を塗りつぶしたい:
LinearGradientを使用して、カラーからトランスペアレントに移行します。
長方形の半分を塗りつぶします:
私は点(x、y)と長方形のサイズを知っています。
LinearGradientBrush
を使用して線形グラデーションを実行しようとすると、次のようになります。
brush = new LinearGradientBrush(
MakePoint(0, y), //bottom left corner
MakePoint(x, 0), //upper right corner
MakeColor(255, c), //fully opaque color
MakeColor(0, c)); //fully transparent color
graphics.FillRectangle(brush, MakeRect(0, 0, w, h));
線形グラデーションブラシは長方形全体を塗りつぶします。これは、長方形の残りの部分を最終的な(透明な)色で塗りつぶし続ければ問題ありません。しかし、代わりにそれはラップアラウンドします:
私は自分の好きな方法を持っています。私は。ではなく、またはをLinearGradientBrush
したいだけです。FillTriangleまたはFillPolygonがなく、FillRectangleとFillEllipseのみがあることを除いて。FillTriangle
FillPolygon
FillRectangle