Leer en inglés

Compartir a través de


Graphics.MultiplyTransform Método

Definición

Multiplica la transformación mundial de este Graphics y especifica el Matrix.

Sobrecargas

MultiplyTransform(Matrix, MatrixOrder)

Multiplica la transformación mundial de este Graphics y especifica la Matrix en el orden especificado.

MultiplyTransform(Matrix)

Multiplica la transformación mundial de este Graphics y especifica el Matrix.

MultiplyTransform(Matrix, MatrixOrder)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

Multiplica la transformación mundial de este Graphics y especifica la Matrix en el orden especificado.

C#
public void MultiplyTransform (System.Drawing.Drawing2D.Matrix matrix, System.Drawing.Drawing2D.MatrixOrder order);

Parámetros

matrix
Matrix

4x4 Matrix que multiplica la transformación mundial.

order
MatrixOrder

Miembro de la enumeración MatrixOrder que determina el orden de la multiplicación.

Ejemplos

El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse, que es un parámetro del controlador de eventos Paint. El código realiza las siguientes acciones:

  • Crea una matriz de transformMatrix (una matriz de dos por dos identidades más un vector de conversión cero).

  • Traduce la matriz de transformación por un vector (200, 100).

  • Gira la matriz de transformación mundial de Windows Form en 30 grados, prepending the rotation matrix for 30 degrees to the form's transformation matrix.

  • Multiplica la matriz de transformación del mundo girado por el transformMatrixtraducido , anexando el transformMatrix a la matriz de transformación del mundo.

  • Dibuja una elipse rotada traducida.

C#
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);
}

Comentarios

Un valor de Prepend para el parámetro order especifica que el orden de la multiplicación es matrix transformación del mundo x. Un valor de Append para order especifica que el orden de la multiplicación es la transformación mundial x matrix.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

MultiplyTransform(Matrix)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

Multiplica la transformación mundial de este Graphics y especifica el Matrix.

C#
public void MultiplyTransform (System.Drawing.Drawing2D.Matrix matrix);

Parámetros

matrix
Matrix

4x4 Matrix que multiplica la transformación mundial.

Ejemplos

El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse, que es un parámetro del controlador de eventos Paint. El código realiza las siguientes acciones:

  • Crea una matriz de transformMatrix (una matriz de dos por dos identidades más un vector de conversión cero).

  • Traduce la matriz de transformación por un vector (200, 100).

  • Gira la matriz de transformación mundial de Windows Form en 30 grados, antepone la matriz de rotación de 30 grados a la matriz de transformación del formulario.

  • Multiplica la matriz de transformación del mundo girado por el transformMatrixtraducido y antepone el transformMatrix a la matriz de transformación del mundo.

  • Dibuja una elipse rotada traducida.

C#
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);
}

Comentarios

Este método antepone la matriz especificada por el parámetro matrix, de modo que el resultado sea matrix transformación del mundo x.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9