Blend クラス

定義

LinearGradientBrush オブジェクトのブレンド パターンを定義します。 このクラスは継承できません。

public ref class Blend sealed
public sealed class Blend
type Blend = class
Public NotInheritable Class Blend
継承
Blend

次の例は、Windows フォーム環境で使用することを目的としています。 Blend クラスを LinearGradientBrush クラスと組み合わせて使用して、色がブレンドされた画面に楕円を描画する方法を示します。 楕円は左側が青で、中央が赤にブレンドされ、右側は青にブレンドされます。 これは、myFactorsプロパティとmyPositionsプロパティで使用されるFactors配列とPositions配列の設定によって実現されます。 Blendという名前のLinearGradientBrush オブジェクトのlgBrush2 プロパティは、Blend オブジェクト myBlendと等しくする必要があります。

public:
   void BlendConstExample( PaintEventArgs^ e )
   {
      //Draw ellipse using Blend.
      Point startPoint2 = Point(20,110);
      Point endPoint2 = Point(140,110);
      array<Single>^myFactors = {.2f,.4f,.8f,.8f,.4f,.2f};
      array<Single>^myPositions = {0.0f,.2f,.4f,.6f,.8f,1.0f};
      Blend^ myBlend = gcnew Blend;
      myBlend->Factors = myFactors;
      myBlend->Positions = myPositions;
      LinearGradientBrush^ lgBrush2 =
            gcnew LinearGradientBrush( startPoint2,endPoint2,Color::Blue,Color::Red );
      lgBrush2->Blend = myBlend;
      Rectangle ellipseRect2 = Rectangle(20,110,120,80);
      e->Graphics->FillEllipse( lgBrush2, ellipseRect2 );

      // End example.
   }
public void BlendConstExample(PaintEventArgs e)
{
             
    //Draw ellipse using Blend.
    Point startPoint2 = new Point(20, 110);
    Point endPoint2 = new Point(140, 110);
    float[] myFactors = {.2f,.4f,.8f,.8f,.4f,.2f};
    float[] myPositions = {0.0f,.2f,.4f,.6f,.8f,1.0f};
    Blend myBlend = new Blend();
    myBlend.Factors = myFactors;
    myBlend.Positions = myPositions;
    LinearGradientBrush lgBrush2 = new LinearGradientBrush(
        startPoint2,
        endPoint2,
        Color.Blue,
        Color.Red);
    lgBrush2.Blend = myBlend;
    Rectangle ellipseRect2 = new Rectangle(20, 110, 120, 80);
    e.Graphics.FillEllipse(lgBrush2, ellipseRect2);
             
    // End example.
}
Public Sub BlendConstExample(ByVal e As PaintEventArgs)

    ' Draw ellipse using Blend.
    Dim startPoint2 As New Point(20, 110)
    Dim endPoint2 As New Point(140, 110)
    Dim myFactors As Single() = {0.2F, 0.4F, 0.8F, 0.8F, 0.4F, 0.2F}
    Dim myPositions As Single() = {0.0F, 0.2F, 0.4F, 0.6F, 0.8F, 1.0F}
    Dim myBlend As New Blend
    myBlend.Factors = myFactors
    myBlend.Positions = myPositions
    Dim lgBrush2 As New LinearGradientBrush(startPoint2, endPoint2, _
    Color.Blue, Color.Red)
    lgBrush2.Blend = myBlend
    Dim ellipseRect2 As New Rectangle(20, 110, 120, 80)
    e.Graphics.FillEllipse(lgBrush2, ellipseRect2)
End Sub

注釈

グラデーションは、図形の内部を滑らかに網掛けするために一般的に使用されます。 ブレンド パターンは、それぞれが同じ数の要素を含む 2 つの配列 (FactorsPositions) によって定義されます。 Positions配列の各要素は、グラデーション線に沿った距離の割合を表します。 Factors配列の各要素は、Positions配列内の対応する要素によって表されるグラデーション線に沿った位置にあるグラデーション ブレンドの開始色と終了色の割合を表します。

たとえば、 Positions 配列と Factors 配列の対応する要素がそれぞれ 0.2 および 0.3 の場合、100 ピクセルの線に沿った青から赤までの線状のグラデーションの場合、その線に沿った色 20 ピクセル (距離の 20%) は青 30% と赤 70% で構成されます。

コンストラクター

名前 説明
Blend()

Blend クラスの新しいインスタンスを初期化します。

Blend(Int32)

指定した数の要素と位置を使用して、 Blend クラスの新しいインスタンスを初期化します。

プロパティ

名前 説明
Factors

グラデーションのブレンド 係数の配列を取得または設定します。

Positions

グラデーションのブレンド位置の配列を取得または設定します。

メソッド

名前 説明
Equals(Object)

指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Objectの簡易コピーを作成します。

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

適用対象