PathGradientBrush.SetBlendTriangularShape Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Orta renkli bir gradyan ve çevresindeki tek bir renge doğrusal bir düşüş oluşturur.
Aşırı Yüklemeler
SetBlendTriangularShape(Single) |
Orta renkli bir gradyan ve çevresindeki tek bir renge doğrusal bir düşüş oluşturur. |
SetBlendTriangularShape(Single, Single) |
Orta renkli bir gradyan ve çevresindeki her renge doğrusal bir düşüş oluşturur. |
SetBlendTriangularShape(Single)
- Kaynak:
- PathGradientBrush.cs
- Kaynak:
- PathGradientBrush.cs
- Kaynak:
- PathGradientBrush.cs
- Kaynak:
- PathGradientBrush.cs
- Kaynak:
- PathGradientBrush.cs
Orta renkli bir gradyan ve çevresindeki tek bir renge doğrusal bir düşüş oluşturur.
public:
void SetBlendTriangularShape(float focus);
public void SetBlendTriangularShape (float focus);
member this.SetBlendTriangularShape : single -> unit
Public Sub SetBlendTriangularShape (focus As Single)
Parametreler
- focus
- Single
0 ile 1 arasında bir değer, yolun ortasından yolun sınırına kadar herhangi bir radyal boyunca orta rengin en yüksek yoğunluğunda olacağını belirtir. 1 değeri (varsayılan) en yüksek yoğunluğu yolun ortasına yerleştirir.
Örnekler
Örnek için bkz. SetBlendTriangularShape.
Açıklamalar
SurroundColors dizisinde birden fazla renk varsa, dizideki ilk renk bitiş rengi için kullanılır. Bu dizide belirtilen renkler fırçanın sınır yolundaki ayrık noktalar için kullanılır.
Şunlara uygulanır
SetBlendTriangularShape(Single, Single)
- Kaynak:
- PathGradientBrush.cs
- Kaynak:
- PathGradientBrush.cs
- Kaynak:
- PathGradientBrush.cs
- Kaynak:
- PathGradientBrush.cs
- Kaynak:
- PathGradientBrush.cs
Orta renkli bir gradyan ve çevresindeki her renge doğrusal bir düşüş oluşturur.
public:
void SetBlendTriangularShape(float focus, float scale);
public void SetBlendTriangularShape (float focus, float scale);
member this.SetBlendTriangularShape : single * single -> unit
Public Sub SetBlendTriangularShape (focus As Single, scale As Single)
Parametreler
- focus
- Single
0 ile 1 arasında bir değer, yolun ortasından yolun sınırına kadar herhangi bir radyal boyunca orta rengin en yüksek yoğunluğunda olacağını belirtir. 1 değeri (varsayılan) en yüksek yoğunluğu yolun ortasına yerleştirir.
- scale
- Single
Sınır rengiyle karıştırılan orta rengin maksimum yoğunluğunu belirten 0 ile 1 arasında bir değer. 1 değeri, orta rengin mümkün olan en yüksek yoğunluğuna neden olur ve varsayılan değerdir.
Örnekler
Aşağıdaki kod örneği, Windows Forms ile kullanılmak üzere tasarlanmıştır ve OnPaint bir olay nesnesi PaintEventArgse
gerektirir. Kod aşağıdaki eylemleri gerçekleştirir:
Bir grafik yolu oluşturur ve buna bir dikdörtgen ekler.
Yol noktalarından bir PathGradientBrush oluşturur (bu örnekte, noktalar bir dikdörtgen oluşturur, ancak çoğu şekil olabilir).
Orta rengi kırmızıya, çevresindeki rengi maviye ayarlar.
Blend dönüşümünü uygulamadan önce PathGradientBrush ekrana çizer.
SetBlendTriangularShape yöntemini kullanarak blend dönüşümünü fırçaya uygular.
Fırça dikdörtgenini daha önce ekrana çizilen dikdörtgeni kaplamaz şekilde taşımak için TranslateTransform yöntemini çağırır.
Çizer dönüştürülmüş fırça dikdörtgeni ekrana çizilir.
En büyük orta rengin (kırmızı) yolun ortasından yol sınırına kadar yarı yolda bulunduğuna dikkat edin.
public:
void SetBlendTriangularShapeExample( 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 the blend.
e->Graphics->FillRectangle( myPGBrush, 10, 10, 200, 200 );
// Set the Blend factors.
myPGBrush->SetBlendTriangularShape( 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 applying the
// transforms.
e->Graphics->FillRectangle( myPGBrush, 10, 10, 300, 300 );
}
public void SetBlendTriangularShapeExample(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 the blend.
e.Graphics.FillRectangle(myPGBrush, 10, 10, 200, 200);
// Set the Blend factors.
myPGBrush.SetBlendTriangularShape(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 applying the
// transforms.
e.Graphics.FillRectangle(myPGBrush, 10, 10, 300, 300);
}
Public Sub SetBlendTriangularShapeExample(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.SetBlendTriangularShape(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 applying the
' transforms.
e.Graphics.FillRectangle(myPGBrush, 10, 10, 300, 300)
End Sub
Açıklamalar
SurroundColors dizisinde birden fazla renk varsa, dizideki ilk renk bitiş rengi için kullanılır. Bu dizide belirtilen renkler, fırçanın sınır yolundaki ayrık noktalar için kullanılan renklerdir.
Varsayılan olarak, yol gradyanının sınırından orta noktaya ilerlerken renk, sınır renginden orta renge aşamalı olarak değişir. Bu yöntemi çağırarak sınır ve orta renklerin konumlandırma ve karıştırmasını özelleştirebilirsiniz.