Bagikan melalui


LinearGradientBrush.MultiplyTransform Metode

Definisi

Mengalikan Matrix yang mewakili transformasi geometrik lokal LinearGradientBrush ini dengan Matrix yang ditentukan dengan menambahkan Matrixyang ditentukan sebelumnya.

Overload

MultiplyTransform(Matrix, MatrixOrder)

Mengalikan Matrix yang mewakili transformasi geometrik lokal LinearGradientBrush ini dengan Matrix yang ditentukan dalam urutan yang ditentukan.

MultiplyTransform(Matrix)

Mengalikan Matrix yang mewakili transformasi geometrik lokal LinearGradientBrush ini dengan Matrix yang ditentukan dengan menambahkan Matrixyang ditentukan sebelumnya.

MultiplyTransform(Matrix, MatrixOrder)

Sumber:
LinearGradientBrush.cs
Sumber:
LinearGradientBrush.cs
Sumber:
LinearGradientBrush.cs
Sumber:
LinearGradientBrush.cs
Sumber:
LinearGradientBrush.cs

Mengalikan Matrix yang mewakili transformasi geometrik lokal LinearGradientBrush ini dengan Matrix yang ditentukan dalam urutan yang ditentukan.

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)

Parameter

matrix
Matrix

Matrix untuk mengalikan transformasi geometrik.

order
MatrixOrder

MatrixOrder yang menentukan untuk mengalikan dua matriks.

Contoh

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

Perhatikan bahwa elips bawah direntangkan ke arah horizontal, dan bahwa gradien direntangkan agar sesuai dengan bentuk baru.

private:
   void MultiplyTransformExample( PaintEventArgs^ e )
   {
      // Create a LinearGradientBrush.
      Rectangle myRect = Rectangle(20,20,200,100);
      LinearGradientBrush^ myLGBrush = gcnew LinearGradientBrush( myRect,Color::Blue,Color::Red,0.0f,true );

      // Draw an ellipse to the screen using the LinearGradientBrush.
      e->Graphics->FillEllipse( myLGBrush, myRect );

      // Transform the LinearGradientBrush.
      array<Point>^ transformArray = {Point(20,150),Point(400,150),Point(20,200)};
      Matrix^ myMatrix = gcnew Matrix( myRect,transformArray );
      myLGBrush->MultiplyTransform( myMatrix, MatrixOrder::Prepend );

      // Draw a second ellipse to the screen using
      // the transformed brush.
      e->Graphics->FillEllipse( myLGBrush, 20, 150, 380, 50 );
   }
 private void MultiplyTransformExample(PaintEventArgs e)
 {
              
     // Create a LinearGradientBrush.
     Rectangle myRect = new Rectangle(20, 20, 200, 100);
     LinearGradientBrush myLGBrush = new LinearGradientBrush(
         myRect, Color.Blue, Color.Red,  0.0f, true);
         
     // Draw an ellipse to the screen using the LinearGradientBrush.
     e.Graphics.FillEllipse(myLGBrush, myRect);
              
     // Transform the LinearGradientBrush.
     Point[] transformArray = { new Point(20, 150),
          new Point(400,150), new Point(20, 200) };

     Matrix myMatrix = new Matrix(myRect, transformArray);
     myLGBrush.MultiplyTransform(
         myMatrix,
         MatrixOrder.Prepend);
              
     // Draw a second ellipse to the screen using
     // the transformed brush.
     e.Graphics.FillEllipse(myLGBrush, 20, 150, 380, 50);
 }
Public Sub MultiplyTransformExample(ByVal e As PaintEventArgs)

    ' Create a LinearGradientBrush.
    Dim myRect As New Rectangle(20, 20, 200, 100)
    Dim myLGBrush As New LinearGradientBrush(myRect, Color.Blue, _
    Color.Red, 0.0F, True)

    ' Draw an ellipse to the screen using the LinearGradientBrush.
    e.Graphics.FillEllipse(myLGBrush, myRect)

    ' Transform the LinearGradientBrush.
    Dim transformArray As Point() = {New Point(20, 150), _
    New Point(400, 150), New Point(20, 200)}
    Dim myMatrix As New Matrix(myRect, transformArray)
    myLGBrush.MultiplyTransform(myMatrix, MatrixOrder.Prepend)

    ' Draw a second ellipse to the screen using the transformed brush.
    e.Graphics.FillEllipse(myLGBrush, 20, 150, 380, 50)
End Sub

Berlaku untuk

MultiplyTransform(Matrix)

Sumber:
LinearGradientBrush.cs
Sumber:
LinearGradientBrush.cs
Sumber:
LinearGradientBrush.cs
Sumber:
LinearGradientBrush.cs
Sumber:
LinearGradientBrush.cs

Mengalikan Matrix yang mewakili transformasi geometrik lokal LinearGradientBrush ini dengan Matrix yang ditentukan dengan menambahkan Matrixyang ditentukan sebelumnya.

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)

Parameter

matrix
Matrix

Matrix untuk mengalikan transformasi geometrik.

Contoh

Misalnya, lihat MultiplyTransform.

Berlaku untuk