PathGradientBrush.MultiplyTransform Yöntem

Tanım

Matrix Bunun yerel geometrik dönüşümünü PathGradientBrush temsil eden öğesini belirtilen Matrix ile çarpar ve belirtilen Matrixöğesini önceden sabitler.

Aşırı Yüklemeler

Name Description
MultiplyTransform(Matrix, MatrixOrder)

Fırçanın dönüştürme matrisini, fırçanın dönüştürme matrisinin çarpımı ile başka bir matrisle çarpılarak güncelleştirir.

MultiplyTransform(Matrix)

Fırçanın dönüşüm matrisini, fırçanın dönüşüm matrisinin çarpımı başka bir matrisle çarpılarak güncelleştirir.

MultiplyTransform(Matrix, MatrixOrder)

Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs

Fırçanın dönüştürme matrisini, fırçanın dönüştürme matrisinin çarpımı ile başka bir matrisle çarpılarak güncelleştirir.

public:
 void MultiplyTransform(System::Drawing::Drawing2D::Matrix ^ matrix, System::Drawing::Drawing2D::MatrixOrder order);
public void MultiplyTransform(System.Drawing.Drawing2D.Matrix matrix, System.Drawing.Drawing2D.MatrixOrder order);
member this.MultiplyTransform : System.Drawing.Drawing2D.Matrix * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub MultiplyTransform (matrix As Matrix, order As MatrixOrder)

Parametreler

matrix
Matrix

Fırçanın Matrix geçerli dönüştürme matrisi ile çarpılacak olan.

order
MatrixOrder

MatrixOrder İki matrisin hangi sırada çarpıldığını belirten bir.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve bir PaintEventArgs olay nesnesi olan eOnPaint 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.

  • Çarpma dönüşümünü PathGradientBrush uygulamadan önce öğesini ekrana çizer.

  • Fırçayı 90 derece döndüren ve her iki eksende de 100 çeviren s matrisi oluşturur.

  • Yöntemini kullanarak bu matrisi fırçaya MultiplyTransform uygular.

  • Fırçayı ekrana çizer.

public:
   void MultiplyTransformExample( PaintEventArgs^ e )
   {
      // Create a graphics path and add an rectangle.
      GraphicsPath^ myPath = gcnew GraphicsPath;
      Rectangle rect = Rectangle(20,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 transformation.
      e->Graphics->FillRectangle( myPGBrush, 10, 10, 200, 200 );

      // Create a new matrix that rotates by 90 degrees, and
      // translates by 100 in each direction.
      Matrix^ myMatrix = gcnew Matrix( 0,1,-1,0,100,100 );

      // Apply the transform to the brush.
      myPGBrush->MultiplyTransform( myMatrix, MatrixOrder::Append );

      // Draw the brush to the screen again after applying the
      // transform.
      e->Graphics->FillRectangle( myPGBrush, 10, 10, 200, 300 );
   }
public void MultiplyTransformExample(PaintEventArgs e)
{
             
    // Create a graphics path and add an rectangle.
    GraphicsPath myPath = new GraphicsPath();
    Rectangle rect = new Rectangle(20, 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 transformation.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 200, 200);
             
    // Create a new matrix that rotates by 90 degrees, and
    // translates by 100 in each direction.
    Matrix myMatrix = new Matrix(0, 1, -1, 0, 100, 100);
             
    // Apply the transform to the brush.
    myPGBrush.MultiplyTransform(myMatrix, MatrixOrder.Append);
             
    // Draw the brush to the screen again after applying the
    // transform.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 200, 300);
}
Public Sub MultiplyTransformExample(ByVal e As PaintEventArgs)

    ' Create a graphics path and add a rectangle.
    Dim myPath As New GraphicsPath
    Dim rect As New Rectangle(20, 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 transformation.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 200, 200)

    ' Create a new matrix that rotates by 90 degrees, and
    ' translates by 100 in each direction.
    Dim myMatrix As New Matrix(0, 1, -1, 0, 100, 100)

    ' Apply the transform to the brush.
    myPGBrush.MultiplyTransform(myMatrix, MatrixOrder.Append)

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

Şunlara uygulanır

MultiplyTransform(Matrix)

Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs

Fırçanın dönüşüm matrisini, fırçanın dönüşüm matrisinin çarpımı başka bir matrisle çarpılarak güncelleştirir.

public:
 void MultiplyTransform(System::Drawing::Drawing2D::Matrix ^ matrix);
public void MultiplyTransform(System.Drawing.Drawing2D.Matrix matrix);
member this.MultiplyTransform : System.Drawing.Drawing2D.Matrix -> unit
Public Sub MultiplyTransform (matrix As Matrix)

Parametreler

matrix
Matrix

Fırçanın Matrix geçerli dönüştürme matrisi ile çarpılacak olan.

Örnekler

Bir örnek için bkz. MultiplyTransform.

Şunlara uygulanır