PathGradientBrush.SetSigmaBellShape Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří přechod mezi střední barvou a první barvou okolí na základě křivky ve tvaru zvonu.
Přetížení
SetSigmaBellShape(Single) |
Vytvoří přechodový štětec, který mění barvu od středu cesty směrem ven až k hranici cesty. Přechod z jedné barvy na jinou je založen na křivkě ve tvaru zvonu. |
SetSigmaBellShape(Single, Single) |
Vytvoří přechodový štětec, který mění barvu od středu cesty směrem ven až k hranici cesty. Přechod z jedné barvy na jinou je založen na křivkě ve tvaru zvonu. |
SetSigmaBellShape(Single)
- Zdroj:
- PathGradientBrush.cs
- Zdroj:
- PathGradientBrush.cs
- Zdroj:
- PathGradientBrush.cs
Vytvoří přechodový štětec, který mění barvu od středu cesty směrem ven až k hranici cesty. Přechod z jedné barvy na jinou je založen na křivkě ve tvaru zvonu.
public:
void SetSigmaBellShape(float focus);
public void SetSigmaBellShape (float focus);
member this.SetSigmaBellShape : single -> unit
Public Sub SetSigmaBellShape (focus As Single)
Parametry
- focus
- Single
Hodnota od 0 do 1, která určuje, kde podél libovolné radiály od středu cesty k hranici cesty bude středová barva v nejvyšší intenzitě. Hodnota 1 (výchozí) umístí nejvyšší intenzitu do středu cesty.
Příklady
Příklad naleznete v tématu SetSigmaBellShape.
Poznámky
Pokud je v matici SurroundColors více než jedna barva, použije se pro koncovou barvu první barva v matici. Barvy zadané v této matici jsou barvy používané pro samostatné body v cestě hranice štětce.
Ve výchozím nastavení se při přechodu z hranice přechodu cesty do středového bodu barva postupně mění z barvy ohraničení na barvu středu. Můžete přizpůsobit umístění a prolnutí okrajové a středové barvy voláním této metody.
Platí pro
SetSigmaBellShape(Single, Single)
- Zdroj:
- PathGradientBrush.cs
- Zdroj:
- PathGradientBrush.cs
- Zdroj:
- PathGradientBrush.cs
Vytvoří přechodový štětec, který mění barvu od středu cesty směrem ven až k hranici cesty. Přechod z jedné barvy na jinou je založen na křivkě ve tvaru zvonu.
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)
Parametry
- focus
- Single
Hodnota od 0 do 1, která určuje, kde podél libovolné radiály od středu cesty k hranici cesty bude středová barva v nejvyšší intenzitě. Hodnota 1 (výchozí) umístí nejvyšší intenzitu do středu cesty.
- scale
- Single
Hodnota od 0 do 1, která určuje maximální intenzitu středové barvy, která se prolíná s barvou ohraničení. Hodnota 1 způsobuje nejvyšší možnou intenzitu středové barvy a je to výchozí hodnota.
Příklady
Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse
OnPaint objekt události. Kód provede následující akce:
Vytvoří cestu grafiky a přidá do ní obdélník.
PathGradientBrush Vytvoří z bodů cesty (v tomto příkladu body tvoří obdélník, ale může to být většina libovolného obrazce).
Nastaví prostřední barvu na červenou a barvu okolí na modrou.
Před použitím transformace blendu PathGradientBrush nakreslí objekt na obrazovku.
Použije transformaci blendu na štětec pomocí jeho SetSigmaBellShape metody.
Zavolá metodu TranslateTransform pro přesunutí obdélníku štětce tak, aby nepřekryl obdélník nakreslený na obrazovku dříve.
Nakreslí obdélník transformovaného štětce na obrazovku.
Všimněte si, že maximální barva na střed (červená) je umístěna v polovině od středu cesty k hranici cesty.
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
Poznámky
Pokud je v matici SurroundColors více než jedna barva, použije se pro koncovou barvu první barva v matici. Barvy zadané v této matici jsou barvy používané pro samostatné body v cestě hranice štětce.
Ve výchozím nastavení se při přechodu z hranice přechodu cesty do středového bodu barva postupně mění z barvy ohraničení na barvu středu. Můžete přizpůsobit umístění a prolnutí okrajové a středové barvy voláním této metody.
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro