Partilhar via


LinearGradientBrush.MultiplyTransform Método

Definição

Multiplica o Matrix que representa a transformação geométrica local dessa LinearGradientBrush pelo Matrix especificado, acrescentando o Matrixespecificado.

Sobrecargas

MultiplyTransform(Matrix, MatrixOrder)

Multiplica o Matrix que representa a transformação geométrica local dessa LinearGradientBrush pelo Matrix especificado na ordem especificada.

MultiplyTransform(Matrix)

Multiplica o Matrix que representa a transformação geométrica local dessa LinearGradientBrush pelo Matrix especificado, acrescentando o Matrixespecificado.

MultiplyTransform(Matrix, MatrixOrder)

Origem:
LinearGradientBrush.cs
Origem:
LinearGradientBrush.cs
Origem:
LinearGradientBrush.cs
Origem:
LinearGradientBrush.cs
Origem:
LinearGradientBrush.cs

Multiplica o Matrix que representa a transformação geométrica local dessa LinearGradientBrush pelo Matrix especificado na ordem especificada.

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)

Parâmetros

matrix
Matrix

O Matrix pelo qual multiplicar a transformação geométrica.

order
MatrixOrder

Um MatrixOrder que especifica em qual ordem multiplicar as duas matrizes.

Exemplos

O exemplo de código a seguir foi projetado para uso com o Windows Forms e requer PaintEventArgse, um objeto de evento OnPaint. O código executa as seguintes ações:

Observe que a elipse inferior é estendida na direção horizontal e que o gradiente é estendido para corresponder à nova forma.

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

Aplica-se a

MultiplyTransform(Matrix)

Origem:
LinearGradientBrush.cs
Origem:
LinearGradientBrush.cs
Origem:
LinearGradientBrush.cs
Origem:
LinearGradientBrush.cs
Origem:
LinearGradientBrush.cs

Multiplica o Matrix que representa a transformação geométrica local dessa LinearGradientBrush pelo Matrix especificado, acrescentando o Matrixespecificado.

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)

Parâmetros

matrix
Matrix

O Matrix pelo qual multiplicar a transformação geométrica.

Exemplos

Para obter um exemplo, consulte MultiplyTransform.

Aplica-se a