Leggere in inglese

Condividi tramite


Graphics.MultiplyTransform Metodo

Definizione

Moltiplica la trasformazione globale di questo Graphics e specifica il Matrix.

Overload

MultiplyTransform(Matrix, MatrixOrder)

Moltiplica la trasformazione globale di questo Graphics e specifica il Matrix nell'ordine specificato.

MultiplyTransform(Matrix)

Moltiplica la trasformazione globale di questo Graphics e specifica il Matrix.

MultiplyTransform(Matrix, MatrixOrder)

Origine:
Graphics.cs
Origine:
Graphics.cs
Origine:
Graphics.cs
Origine:
Graphics.cs
Origine:
Graphics.cs

Moltiplica la trasformazione globale di questo Graphics e specifica il Matrix nell'ordine specificato.

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

Parametri

matrix
Matrix

4x4 Matrix che moltiplica la trasformazione del mondo.

order
MatrixOrder

Membro dell'enumerazione MatrixOrder che determina l'ordine della moltiplicazione.

Esempio

L'esempio di codice seguente è progettato per l'uso con Windows Form e richiede PaintEventArgse, che è un parametro del gestore eventi Paint. Il codice esegue le azioni seguenti:

  • Crea una matrice di transformMatrix (due per due matrici di identità più un vettore di conversione zero).

  • Converte la matrice di trasformazione in base a un vettore (200, 100).

  • Ruota la matrice di trasformazione globale di Windows Form di 30 gradi, anteponendo la matrice di rotazione per 30 gradi alla matrice di trasformazione del modulo.

  • Moltiplica la matrice di trasformazione globale ruotata in base all'transformMatrixtradotta , aggiungendo il transformMatrix alla matrice di trasformazione globale.

  • Disegna un'ellisse ruotata e tradotta.

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

Commenti

Un valore di Prepend per il parametro order specifica che l'ordine della moltiplicazione è matrix trasformazione x world. Un valore di Append per order specifica che l'ordine della moltiplicazione è trasformazione globale x matrix.

Vedi anche

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.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)

Origine:
Graphics.cs
Origine:
Graphics.cs
Origine:
Graphics.cs
Origine:
Graphics.cs
Origine:
Graphics.cs

Moltiplica la trasformazione globale di questo Graphics e specifica il Matrix.

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

Parametri

matrix
Matrix

4x4 Matrix che moltiplica la trasformazione del mondo.

Esempio

L'esempio di codice seguente è progettato per l'uso con Windows Form e richiede PaintEventArgse, che è un parametro del gestore eventi Paint. Il codice esegue le azioni seguenti:

  • Crea una matrice di transformMatrix (due per due matrici di identità più un vettore di conversione zero).

  • Converte la matrice di trasformazione in base a un vettore (200, 100).

  • Ruota la matrice di trasformazione globale di Windows Form di 30 gradi, antepone la matrice di rotazione per 30 gradi alla matrice di trasformazione della maschera.

  • Moltiplica la matrice di trasformazione del mondo ruotata in base all'transformMatrixtradotta e antepone il transformMatrix alla matrice di trasformazione globale.

  • Disegna un'ellisse ruotata e tradotta.

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

Commenti

Questo metodo antepone la matrice specificata dal parametro matrix, in modo che il risultato sia matrix trasformazione x world.

Vedi anche

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.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