2013年03月27日

WPFサンプル:RadialGradientBrushを使い放射状グラデーションで領域を塗りつぶす

   このエントリーをはてなブックマークに追加 Clip to Evernote
放射状グラデーション(下の図参照)で領域を塗りつぶすには、RadialGradientBrushを指定します。

RadialGradientBrush1 RadialGradientBrush2 RadialGradientBrush3

GradationOriginでグラデーションの開始位置を指定します。放射グラデーションの円の中心は、
Centerプロパティで指定しますが、この例では、規定値 Point(0.5, 0.5) を使用しています。
つまり、この例では、Rectangleの中心ということになります。
放射状グラデーションの外側の円の横半径は、RadiusX とRadiusYプロパティで指定します。
既定値は 0.5 であり、この例では省略し規定値を使っています。
グラデーションの色の変化は、GradientStopを使います。GradientStopは、色とその相対位置を指定
しています。この例では、White -> Olive -> Blackへとグラデーションします。


この例では、Sliderを動かすと、GradientOriginの位置を変化させることができます。
XAMLで簡単に実現する方法がわからなかったので、この部分は、C#で記述しています。
2つのSliderの値から、Pointオブジェクトを作成し、それをGradientOrigin のセットすることで実現しています。




 

この記事へのトラックバックURL

http://trackback.blogsys.jp/livedoor/gushwell/52311431