Sdílet prostřednictvím


LinearGradientBrush.MultiplyTransform Metoda

Definice

Vynásobí Matrix, která představuje místní geometrické transformace tohoto LinearGradientBrush zadaným Matrix předem zadaným Matrix.

Přetížení

MultiplyTransform(Matrix, MatrixOrder)

Vynásobí Matrix, která představuje místní geometrické transformace tohoto LinearGradientBrush zadaným Matrix v zadaném pořadí.

MultiplyTransform(Matrix)

Vynásobí Matrix, která představuje místní geometrické transformace tohoto LinearGradientBrush zadaným Matrix předem zadaným Matrix.

MultiplyTransform(Matrix, MatrixOrder)

Zdroj:
LinearGradientBrush.cs
Zdroj:
LinearGradientBrush.cs
Zdroj:
LinearGradientBrush.cs
Zdroj:
LinearGradientBrush.cs
Zdroj:
LinearGradientBrush.cs

Vynásobí Matrix, která představuje místní geometrické transformace tohoto LinearGradientBrush zadaným Matrix v zadaném pořadí.

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)

Parametry

matrix
Matrix

Matrix, kterým se má geometrická transformace vynásobit.

order
MatrixOrder

MatrixOrder, která určuje, ve kterém pořadí se mají násobit dvě matice.

Příklady

Následující příklad kódu je určen pro použití s Windows Forms a vyžaduje PaintEventArgse, OnPaint objekt události. Kód provede následující akce:

Všimněte si, že dolní tři tečky jsou roztaženy vodorovným směrem a že přechod je roztažený tak, aby odpovídal novému obrazci.

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

Platí pro

MultiplyTransform(Matrix)

Zdroj:
LinearGradientBrush.cs
Zdroj:
LinearGradientBrush.cs
Zdroj:
LinearGradientBrush.cs
Zdroj:
LinearGradientBrush.cs
Zdroj:
LinearGradientBrush.cs

Vynásobí Matrix, která představuje místní geometrické transformace tohoto LinearGradientBrush zadaným Matrix předem zadaným Matrix.

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)

Parametry

matrix
Matrix

Matrix, kterým se má geometrická transformace vynásobit.

Příklady

Příklad najdete v tématu MultiplyTransform.

Platí pro