Share via


PathGradientBrush.SetSigmaBellShape Metodo

Definizione

Crea un'interruzione della sfumatura tra il colore centrale e il primo colore circostante in base a una curva a campana.

Overload

SetSigmaBellShape(Single)

Crea un pennello per le sfumature che cambia colore a partire dal centro del percorso fino al suo limite. Il cambiamento da un colore all'altro si basa su una curva a campana.

SetSigmaBellShape(Single, Single)

Crea un pennello per le sfumature che cambia colore a partire dal centro del percorso fino al suo limite. Il cambiamento da un colore all'altro si basa su una curva a campana.

SetSigmaBellShape(Single)

Origine:
PathGradientBrush.cs
Origine:
PathGradientBrush.cs
Origine:
PathGradientBrush.cs

Crea un pennello per le sfumature che cambia colore a partire dal centro del percorso fino al suo limite. Il cambiamento da un colore all'altro si basa su una curva a campana.

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

Parametri

focus
Single

Valore compreso tra 0 e 1 che specifica il punto in cui, lungo qualsiasi radiale dal centro al limite del percorso, si troverà la massima intensità del colore centrale. Il valore 1 (valore predefinito) posiziona la massima intensità al centro del percorso.

Esempio

Per un esempio, vedere SetSigmaBellShape.

Commenti

Se nella matrice sono presenti più colori SurroundColors , il primo colore nella matrice viene usato per il colore finale. I colori specificati in questa matrice sono colori utilizzati per i punti discreti nel percorso limite del pennello.

Per impostazione predefinita, quando si passa dal limite di una sfumatura di percorso al punto centrale, il colore cambia gradualmente dal colore limite al colore centrale. È possibile personalizzare il posizionamento e la fusione dei colori del limite e del centro chiamando questo metodo.

Si applica a

SetSigmaBellShape(Single, Single)

Origine:
PathGradientBrush.cs
Origine:
PathGradientBrush.cs
Origine:
PathGradientBrush.cs

Crea un pennello per le sfumature che cambia colore a partire dal centro del percorso fino al suo limite. Il cambiamento da un colore all'altro si basa su una curva a campana.

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)

Parametri

focus
Single

Valore compreso tra 0 e 1 che specifica il punto in cui, lungo qualsiasi radiale dal centro al limite del percorso, si troverà la massima intensità del colore centrale. Il valore 1 (valore predefinito) posiziona la massima intensità al centro del percorso.

scale
Single

Valore compreso tra 0 e 1 che specifica l'intensità massima del colore centrale, sfumato con il colore del limite. Il valore 1 indica la massima intensità possibile del colore centrale e rappresenta l'impostazione predefinita.

Esempio

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgse, un OnPaint oggetto evento. Il codice esegue le azioni seguenti:

  • Crea un percorso grafico e vi aggiunge un rettangolo.

  • Crea un PathGradientBrush oggetto dai punti del percorso (in questo esempio i punti formano un rettangolo, ma potrebbero essere la maggior parte di qualsiasi forma).

  • Imposta il colore centrale su rosso e il colore circostante su blu.

  • Disegna l'oggetto PathGradientBrush sullo schermo prima di applicare la trasformazione blend.

  • Applica la trasformazione blend al pennello usando il relativo SetSigmaBellShape metodo.

  • Chiama il TranslateTransform metodo per spostare il rettangolo del pennello in modo che non si sovrappone a quello disegnato in precedenza sullo schermo.

  • Disegna il rettangolo del pennello trasformato sullo schermo.

Si noti che il colore centrale massimo (rosso) si trova a metà strada dal centro del percorso al limite del percorso.

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

Commenti

Se nella matrice sono presenti più colori SurroundColors , il primo colore nella matrice viene usato per il colore finale. I colori specificati in questa matrice sono colori utilizzati per i punti discreti nel percorso limite del pennello.

Per impostazione predefinita, quando si passa dal limite di una sfumatura di percorso al punto centrale, il colore cambia gradualmente dal colore limite al colore centrale. È possibile personalizzare il posizionamento e la fusione dei colori del limite e del centro chiamando questo metodo.

Si applica a