Condividi tramite


LinearGradientBrush.MultiplyTransform Metodo

Definizione

Moltiplica il Matrix che rappresenta la trasformazione geometrica locale di questo LinearGradientBrush dall'Matrix specificato anteponendo il Matrixspecificato.

Overload

MultiplyTransform(Matrix, MatrixOrder)

Moltiplica il Matrix che rappresenta la trasformazione geometrica locale di questo LinearGradientBrush in base al Matrix specificato nell'ordine specificato.

MultiplyTransform(Matrix)

Moltiplica il Matrix che rappresenta la trasformazione geometrica locale di questo LinearGradientBrush dall'Matrix specificato anteponendo il Matrixspecificato.

MultiplyTransform(Matrix, MatrixOrder)

Origine:
LinearGradientBrush.cs
Origine:
LinearGradientBrush.cs
Origine:
LinearGradientBrush.cs
Origine:
LinearGradientBrush.cs
Origine:
LinearGradientBrush.cs

Moltiplica il Matrix che rappresenta la trasformazione geometrica locale di questo LinearGradientBrush in base al Matrix specificato nell'ordine specificato.

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)

Parametri

matrix
Matrix

Il Matrix in base al quale moltiplicare la trasformazione geometrica.

order
MatrixOrder

Oggetto MatrixOrder che specifica in quale ordine moltiplicare le due matrici.

Esempio

L'esempio di codice seguente è progettato per l'uso con Windows Form e richiede PaintEventArgse, un oggetto evento OnPaint. Il codice esegue le azioni seguenti:

Si noti che l'ellisse inferiore viene allungata nella direzione orizzontale e che la sfumatura viene allungata in modo che corrisponda alla nuova 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

Si applica a

MultiplyTransform(Matrix)

Origine:
LinearGradientBrush.cs
Origine:
LinearGradientBrush.cs
Origine:
LinearGradientBrush.cs
Origine:
LinearGradientBrush.cs
Origine:
LinearGradientBrush.cs

Moltiplica il Matrix che rappresenta la trasformazione geometrica locale di questo LinearGradientBrush dall'Matrix specificato anteponendo il Matrixspecificato.

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)

Parametri

matrix
Matrix

Il Matrix in base al quale moltiplicare la trasformazione geometrica.

Esempio

Per un esempio, vedere MultiplyTransform.

Si applica a