LinearGradientBrush.MultiplyTransform Methode

Definition

Multipliziert die Matrix, die die lokale geometrische Transformation dieses LinearGradientBrush darstellt, mit der angegebenen Matrix, indem die angegebene Matrix vorangestellt wird.

Überlädt

MultiplyTransform(Matrix, MatrixOrder)

Multipliziert das die geometrische Transformation des Matrix-Objekts darstellende LinearGradientBrush-Objekt mit der angegebenen Matrix in der angegebenen Reihenfolge.

MultiplyTransform(Matrix)

Multipliziert die Matrix, die die lokale geometrische Transformation dieses LinearGradientBrush darstellt, mit der angegebenen Matrix, indem die angegebene Matrix vorangestellt wird.

MultiplyTransform(Matrix, MatrixOrder)

Quelle:
LinearGradientBrush.cs
Quelle:
LinearGradientBrush.cs
Quelle:
LinearGradientBrush.cs

Multipliziert das die geometrische Transformation des Matrix-Objekts darstellende LinearGradientBrush-Objekt mit der angegebenen Matrix in der angegebenen Reihenfolge.

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

Das Matrix-Objekt, mit der die geometrische Transformation multipliziert wird.

order
MatrixOrder

Eine MatrixOrder, die angibt, in welcher Reihenfolge die beiden Matrizen multipliziert werden sollen.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgseein OnPaint Ereignisobjekt. Der Code führt die folgenden Aktionen aus:

  • Erstellt einen neuen LinearGradientBrush.

  • Zeichnet mit diesem Pinsel eine Ellipse auf den Bildschirm.

  • Ruft die MultiplyTransform -Methode auf, um zu transformieren LinearGradientBrush.

  • Zeichnet mit dem transformierten Pinsel eine Ellipse direkt unterhalb der ersten Auslassungspunkte auf den Bildschirm.

Beachten Sie, dass die untere Ellipse in horizontaler Richtung gestreckt ist und dass der Farbverlauf so gestreckt wird, dass er der neuen Form entspricht.

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

Gilt für:

MultiplyTransform(Matrix)

Quelle:
LinearGradientBrush.cs
Quelle:
LinearGradientBrush.cs
Quelle:
LinearGradientBrush.cs

Multipliziert die Matrix, die die lokale geometrische Transformation dieses LinearGradientBrush darstellt, mit der angegebenen Matrix, indem die angegebene Matrix vorangestellt wird.

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

Das Matrix-Objekt, mit der die geometrische Transformation multipliziert wird.

Beispiele

Ein Beispiel finden Sie unter MultiplyTransform.

Gilt für: