Freigeben über


LinearGradientBrush.MultiplyTransform Methode

Definition

Multipliziert die Matrix, die die lokale geometrische Transformation dieses LinearGradientBrush durch die angegebene Matrix darstellt, indem die angegebene Matrixvorausgestellt wird.

Überlädt

MultiplyTransform(Matrix, MatrixOrder)

Multipliziert die Matrix, die die lokale geometrische Transformation dieser LinearGradientBrush durch die angegebene Matrix in der angegebenen Reihenfolge darstellt.

MultiplyTransform(Matrix)

Multipliziert die Matrix, die die lokale geometrische Transformation dieses LinearGradientBrush durch die angegebene Matrix darstellt, indem die angegebene Matrixvorausgestellt wird.

MultiplyTransform(Matrix, MatrixOrder)

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

Multipliziert die Matrix, die die lokale geometrische Transformation dieser LinearGradientBrush durch die angegebene Matrix in der angegebenen Reihenfolge darstellt.

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

Die Matrix, mit der die geometrische Transformation multipliziert werden soll.

order
MatrixOrder

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

Beispiele

Das folgende Codebeispiel wurde für die Verwendung mit Windows Forms entwickelt und erfordert PaintEventArgse, ein OnPaint-Ereignisobjekt. Der Code führt die folgenden Aktionen aus:

  • Erstellt eine neue LinearGradientBrush.

  • Zeichnet mit diesem Pinsel eine Auslassungspunkte auf den Bildschirm.

  • Ruft die MultiplyTransform-Methode auf, um die LinearGradientBrushzu transformieren.

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

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

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
Quelle:
LinearGradientBrush.cs
Quelle:
LinearGradientBrush.cs

Multipliziert die Matrix, die die lokale geometrische Transformation dieses LinearGradientBrush durch die angegebene Matrix darstellt, indem die angegebene Matrixvorausgestellt 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

Die Matrix, mit der die geometrische Transformation multipliziert werden soll.

Beispiele

Ein Beispiel finden Sie unter MultiplyTransform.

Gilt für: