Graphics.MultiplyTransform Methode

Definition

Multipliziert die Welttransformation dieser Graphics und angegebene die Matrix.

Überlädt

Name Beschreibung
MultiplyTransform(Matrix, MatrixOrder)

Multipliziert die Welttransformation dieses Graphics und gibt die Matrix in der angegebenen Reihenfolge an.

MultiplyTransform(Matrix)

Multipliziert die Welttransformation dieser Graphics und angegebene die Matrix.

MultiplyTransform(Matrix, MatrixOrder)

Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs

Multipliziert die Welttransformation dieses Graphics und gibt die Matrix in der angegebenen Reihenfolge an.

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

4x4 Matrix , das die Welttransformation multipliziert.

order
MatrixOrder

Element der MatrixOrder Aufzählung, die die Reihenfolge der Multiplikation bestimmt.

Beispiele

Das folgende Codebeispiel wurde für die Verwendung mit Windows Forms entwickelt und erfordert PaintEventArgse, bei dem es sich um einen Parameter des ereignishandlers Paint handelt. Der Code führt die folgenden Aktionen aus:

  • Erstellt eine transformMatrix Matrix (zwei durch zwei Identitätsmatrix und einen Nullübersetzungsvektor).

  • Übersetzt die Transformationsmatrix durch einen Vektor (200, 100).

  • Dreht die Welttransformationsmatrix von Windows Form um 30 Grad, bevor die Drehungsmatrix 30 Grad auf die Transformationsmatrix des Formulars aussteht.

  • Multipliziert die gedrehte Welttransformationsmatrix durch die übersetzte transformMatrixMatrix, die die transformMatrix Welttransformationsmatrix ansetzt.

  • Zeichnet eine gedrehte, übersetzte Ellipse.

public:
   void MultiplyTransformMatrixOrder( PaintEventArgs^ e )
   {
      // Create transform matrix.
      Matrix^ transformMatrix = gcnew Matrix;

      // Translate matrix, prepending translation vector.
      transformMatrix->Translate( 200.0F, 100.0F );

      // Rotate transformation matrix of graphics object,
      // prepending rotation matrix.
      e->Graphics->RotateTransform( 30.0F );

      // Multiply (append to) transformation matrix of
      // graphics object to translate graphics transformation.
      e->Graphics->MultiplyTransform( transformMatrix, MatrixOrder::Append );

      // Draw rotated, translated ellipse.
      e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), -80, -40, 160, 80 );
   }
private void MultiplyTransformMatrixOrder(PaintEventArgs e)
{

    // Create transform matrix.
    Matrix transformMatrix = new Matrix();

    // Translate matrix, prepending translation vector.
    transformMatrix.Translate(200.0F, 100.0F);

    // Rotate transformation matrix of graphics object,

    // prepending rotation matrix.
    e.Graphics.RotateTransform(30.0F);

    // Multiply (append to) transformation matrix of

    // graphics object to translate graphics transformation.
    e.Graphics.MultiplyTransform(transformMatrix, MatrixOrder.Append);

    // Draw rotated, translated ellipse.
    e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), -80, -40, 160, 80);
}
Private Sub MultiplyTransformMatrixOrder(ByVal e As PaintEventArgs)

    ' Create transform matrix.
    Dim transformMatrix As New Matrix

    ' Translate matrix, prepending translation vector.
    transformMatrix.Translate(200.0F, 100.0F)

    ' Rotate transformation matrix of graphics object,

    ' prepending rotation matrix.
    e.Graphics.RotateTransform(30.0F)

    ' Multiply (append to) transformation matrix of

    ' graphics object to translate graphics transformation.
    e.Graphics.MultiplyTransform(transformMatrix, MatrixOrder.Append)

    ' Draw rotated, translated ellipse.
    e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), -80, -40, 160, 80)
End Sub

Hinweise

Ein Wert für Prepend den order Parameter gibt an, dass die Reihenfolge der Multiplikation x-Welttransformation ist matrix . Ein Wert für Appendorder gibt an, dass die Reihenfolge der Multiplikation die Welttransformation x matrixist.

Weitere Informationen

Gilt für:

MultiplyTransform(Matrix)

Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs
Quelle:
Graphics.cs

Multipliziert die Welttransformation dieser Graphics und angegebene die 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)

Parameter

matrix
Matrix

4x4 Matrix , das die Welttransformation multipliziert.

Beispiele

Das folgende Codebeispiel wurde für die Verwendung mit Windows Forms entwickelt und erfordert PaintEventArgse, bei dem es sich um einen Parameter des ereignishandlers Paint handelt. Der Code führt die folgenden Aktionen aus:

  • Erstellt eine transformMatrix Matrix (zwei durch zwei Identitätsmatrix und einen Nullübersetzungsvektor).

  • Übersetzt die Transformationsmatrix durch einen Vektor (200, 100).

  • Dreht die Welttransformationsmatrix von Windows Form um 30 Grad, stellt die Drehungsmatrix um 30 Grad zur Transformationsmatrix des Formulars vor.

  • Multipliziert die gedrehte Welttransformationsmatrix durch die übersetzte transformMatrixMatrix und stellt die transformMatrix Welttransformationsmatrix voran.

  • Zeichnet eine gedrehte, übersetzte Ellipse.

public:
   void MultiplyTransformMatrix( PaintEventArgs^ e )
   {
      // Create transform matrix.
      Matrix^ transformMatrix = gcnew Matrix;

      // Translate matrix, prepending translation vector.
      transformMatrix->Translate( 200.0F, 100.0F );

      // Rotate transformation matrix of graphics object,
      // prepending rotation matrix.
      e->Graphics->RotateTransform( 30.0F );

      // Multiply (prepend to) transformation matrix of
      // graphics object to translate graphics transformation.
      e->Graphics->MultiplyTransform( transformMatrix );

      // Draw rotated, translated ellipse.
      e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), -80, -40, 160, 80 );
   }
private void MultiplyTransformMatrix(PaintEventArgs e)
{

    // Create transform matrix.
    Matrix transformMatrix = new Matrix();

    // Translate matrix, prepending translation vector.
    transformMatrix.Translate(200.0F, 100.0F);

    // Rotate transformation matrix of graphics object,

    // prepending rotation matrix.
    e.Graphics.RotateTransform(30.0F);

    // Multiply (prepend to) transformation matrix of

    // graphics object to translate graphics transformation.
    e.Graphics.MultiplyTransform(transformMatrix);

    // Draw rotated, translated ellipse.
    e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), -80, -40, 160, 80);
}
Private Sub MultiplyTransformMatrix(ByVal e As PaintEventArgs)

    ' Create transform matrix.
    Dim transformMatrix As New Matrix

    ' Translate matrix, prepending translation vector.
    transformMatrix.Translate(200.0F, 100.0F)

    ' Rotate transformation matrix of graphics object,

    ' prepending rotation matrix.
    e.Graphics.RotateTransform(30.0F)

    ' Multiply (prepend to) transformation matrix of

    ' graphics object to translate graphics transformation.
    e.Graphics.MultiplyTransform(transformMatrix)

    ' Draw rotated, translated ellipse.
    e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), -80, -40, 160, 80)
End Sub

Hinweise

Mit dieser Methode wird die durch den matrix Parameter angegebene Matrix vorangestellt, sodass das Ergebnis eine x-Welttransformation ist matrix .

Weitere Informationen

Gilt für: