Bagikan melalui


PathGradientBrush.SetSigmaBellShape Metode

Definisi

Membuat falloff gradien antara warna tengah dan warna pertama di sekitarnya berdasarkan kurva berbentuk bel.

Overload

SetSigmaBellShape(Single)

Membuat kuas gradien yang berubah warna mulai dari tengah jalur keluar ke batas jalur. Transisi dari satu warna ke warna lainnya didasarkan pada kurva berbentuk bel.

SetSigmaBellShape(Single, Single)

Membuat kuas gradien yang berubah warna mulai dari tengah jalur keluar ke batas jalur. Transisi dari satu warna ke warna lainnya didasarkan pada kurva berbentuk bel.

SetSigmaBellShape(Single)

Sumber:
PathGradientBrush.cs
Sumber:
PathGradientBrush.cs
Sumber:
PathGradientBrush.cs
Sumber:
PathGradientBrush.cs
Sumber:
PathGradientBrush.cs

Membuat kuas gradien yang berubah warna mulai dari tengah jalur keluar ke batas jalur. Transisi dari satu warna ke warna lainnya didasarkan pada kurva berbentuk bel.

public:
 void SetSigmaBellShape(float focus);
public void SetSigmaBellShape (float focus);
member this.SetSigmaBellShape : single -> unit
Public Sub SetSigmaBellShape (focus As Single)

Parameter

focus
Single

Nilai dari 0 hingga 1 yang menentukan di mana, di sepanjang radial apa pun dari tengah jalur ke batas jalur, warna tengah akan berada pada intensitas tertingginya. Nilai 1 (default) menempatkan intensitas tertinggi di tengah jalur.

Contoh

Misalnya, lihat SetSigmaBellShape.

Keterangan

Jika ada lebih dari satu warna dalam array SurroundColors, warna pertama dalam array digunakan untuk warna akhir. Warna yang ditentukan dalam array ini adalah warna yang digunakan untuk titik diskrit pada jalur batas kuas.

Secara default, saat Anda berpindah dari batas gradien jalur ke titik tengah, warna berubah secara bertahap dari warna batas ke warna tengah. Anda dapat menyesuaikan posisi dan perpaduan batas dan warna tengah dengan memanggil metode ini.

Berlaku untuk

SetSigmaBellShape(Single, Single)

Sumber:
PathGradientBrush.cs
Sumber:
PathGradientBrush.cs
Sumber:
PathGradientBrush.cs
Sumber:
PathGradientBrush.cs
Sumber:
PathGradientBrush.cs

Membuat kuas gradien yang berubah warna mulai dari tengah jalur keluar ke batas jalur. Transisi dari satu warna ke warna lainnya didasarkan pada kurva berbentuk bel.

public:
 void SetSigmaBellShape(float focus, float scale);
public void SetSigmaBellShape (float focus, float scale);
member this.SetSigmaBellShape : single * single -> unit
Public Sub SetSigmaBellShape (focus As Single, scale As Single)

Parameter

focus
Single

Nilai dari 0 hingga 1 yang menentukan di mana, di sepanjang radial apa pun dari tengah jalur ke batas jalur, warna tengah akan berada pada intensitas tertingginya. Nilai 1 (default) menempatkan intensitas tertinggi di tengah jalur.

scale
Single

Nilai dari 0 hingga 1 yang menentukan intensitas maksimum warna tengah yang dicamur dengan warna batas. Nilai 1 menyebabkan intensitas tertinggi dari warna tengah, dan itu adalah nilai default.

Contoh

Contoh kode berikut dirancang untuk digunakan dengan Windows Forms, dan memerlukan PaintEventArgse, objek peristiwa OnPaint. Kode melakukan tindakan berikut:

  • Membuat jalur grafis dan menambahkan persegi panjang ke dalamnya.

  • Membuat PathGradientBrush dari titik jalur (dalam contoh ini, titik membentuk persegi panjang, tetapi bisa menjadi bentuk apa pun).

  • Mengatur warna tengah ke merah dan warna sekitarnya menjadi biru.

  • Menggambar PathGradientBrush ke layar sebelum menerapkan transformasi campuran.

  • Menerapkan transformasi campuran ke kuas dengan menggunakan metode SetSigmaBellShape.

  • Memanggil metode TranslateTransform untuk memindahkan persegi panjang kuas sehingga tidak melapisi yang digambar ke layar sebelumnya.

  • Menggambar persegi panjang kuas yang diubah ke layar.

Perhatikan bahwa warna tengah maksimum (merah) terletak setengah jalan dari tengah jalur ke batas jalur.

public:
   void SetSigmaBellShapeExample( PaintEventArgs^ e )
   {
      // Create a graphics path and add a rectangle.
      GraphicsPath^ myPath = gcnew GraphicsPath;
      Rectangle rect = Rectangle(100,20,100,50);
      myPath->AddRectangle( rect );

      // Get the path's array of points.
      array<PointF>^myPathPointArray = myPath->PathPoints;

      // Create a path gradient brush.
      PathGradientBrush^ myPGBrush = gcnew PathGradientBrush( myPathPointArray );

      // Set the color span.
      myPGBrush->CenterColor = Color::Red;
      array<Color>^ mySurroundColor = {Color::Blue};
      myPGBrush->SurroundColors = mySurroundColor;

      // Draw the brush to the screen prior to blend.
      e->Graphics->FillRectangle( myPGBrush, 10, 10, 200, 200 );

      // Set the Blend factors and transform the brush.
      myPGBrush->SetSigmaBellShape( 0.5f, 1.0f );

      // Move the brush down by 100 by applying the translate
      // transform to the brush.
      myPGBrush->TranslateTransform( 0, 100, MatrixOrder::Append );

      // Draw the brush to the screen again after setting the
      // blend and applying the transform.
      e->Graphics->FillRectangle( myPGBrush, 10, 10, 300, 300 );
   }
public void SetSigmaBellShapeExample(PaintEventArgs e)
{
             
    // Create a graphics path and add a rectangle.
    GraphicsPath myPath = new GraphicsPath();
    Rectangle rect = new Rectangle(100, 20, 100, 50);
    myPath.AddRectangle(rect);
             
    // Get the path's array of points.
    PointF[] myPathPointArray = myPath.PathPoints;
             
    // Create a path gradient brush.
    PathGradientBrush myPGBrush = new
        PathGradientBrush(myPathPointArray);
             
    // Set the color span.
    myPGBrush.CenterColor = Color.Red;
    Color[] mySurroundColor = {Color.Blue};
    myPGBrush.SurroundColors = mySurroundColor;
             
    // Draw the brush to the screen prior to blend.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 200, 200);
             
    // Set the Blend factors and transform the brush.
    myPGBrush.SetSigmaBellShape(0.5f, 1.0f);
             
    // Move the brush down by 100 by applying the translate
    // transform to the brush.
    myPGBrush.TranslateTransform(0, 100, MatrixOrder.Append);
             
    // Draw the brush to the screen again after setting the
    // blend and applying the transform.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 300, 300);
}
Public Sub SetSigmaBellShapeExample(ByVal e As PaintEventArgs)

    ' Create a graphics path and add a rectangle.
    Dim myPath As New GraphicsPath
    Dim rect As New Rectangle(100, 20, 100, 50)
    myPath.AddRectangle(rect)

    ' Get the path's array of points.
    Dim myPathPointArray As PointF() = myPath.PathPoints

    ' Create a path gradient brush.
    Dim myPGBrush As New PathGradientBrush(myPathPointArray)

    ' Set the color span.
    myPGBrush.CenterColor = Color.Red
    Dim mySurroundColor As Color() = {Color.Blue}
    myPGBrush.SurroundColors = mySurroundColor

    ' Draw the brush to the screen prior to blend.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 200, 200)

    ' Set the Blend factors.
    myPGBrush.SetSigmaBellShape(0.5F, 1.0F)

    ' Move the brush down by 100 by applying the translate
    ' transform to the brush.
    myPGBrush.TranslateTransform(0, 100, MatrixOrder.Append)

    ' Draw the brush to the screen again after setting the
    ' blend and applying the transform.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 300, 300)
End Sub

Keterangan

Jika ada lebih dari satu warna dalam array SurroundColors, warna pertama dalam array digunakan untuk warna akhir. Warna yang ditentukan dalam array ini adalah warna yang digunakan untuk titik diskrit pada jalur batas kuas.

Secara default, saat Anda berpindah dari batas gradien jalur ke titik tengah, warna berubah secara bertahap dari warna batas ke warna tengah. Anda dapat menyesuaikan posisi dan perpaduan batas dan warna tengah dengan memanggil metode ini.

Berlaku untuk