Condividi tramite


Graphics.TranslateTransform Metodo

Definizione

Modifica l'origine del sistema di coordinate anteponendo la conversione specificata alla matrice di trasformazione di questo Graphics.

Overload

TranslateTransform(Single, Single)

Modifica l'origine del sistema di coordinate anteponendo la conversione specificata alla matrice di trasformazione di questo Graphics.

TranslateTransform(Single, Single, MatrixOrder)

Modifica l'origine del sistema di coordinate applicando la conversione specificata alla matrice di trasformazione di questo Graphics nell'ordine specificato.

TranslateTransform(Single, Single)

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

Modifica l'origine del sistema di coordinate anteponendo la conversione specificata alla matrice di trasformazione di questo Graphics.

public:
 void TranslateTransform(float dx, float dy);
public void TranslateTransform (float dx, float dy);
member this.TranslateTransform : single * single -> unit
Public Sub TranslateTransform (dx As Single, dy As Single)

Parametri

dx
Single

Coordinata x della traslazione.

dy
Single

Coordinata y della traslazione.

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:

  • Ruota la matrice di trasformazione globale di Windows Form di 30,0 gradiF.

  • Sposta l'origine dell'oggetto grafico chiamando TranslateTransform, anteponendo la traduzione alla matrice di trasformazione.

  • Disegna un'ellisse tradotta ruotata con una penna blu.

public:
   void TranslateTransformAngle( PaintEventArgs^ e )
   {
      // Set world transform of graphics object to rotate.
      e->Graphics->RotateTransform( 30.0F );

      // Then to translate, prepending to world transform.
      e->Graphics->TranslateTransform( 100.0F, 0.0F );

      // Draw translated, rotated ellipse to screen.
      e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), 0, 0, 200, 80 );
   }
private void TranslateTransformAngle(PaintEventArgs e)
{

    // Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F);

    // Then to translate, prepending to world transform.
    e.Graphics.TranslateTransform(100.0F, 0.0F);

    // Draw translated, rotated ellipse to screen.
    e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);
}
Private Sub TranslateTransformAngle(ByVal e As PaintEventArgs)

    ' Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F)

    ' Then to translate, prepending to world transform.
    e.Graphics.TranslateTransform(100.0F, 0.0F)

    ' Draw translated, rotated ellipse to screen.
    e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), 0, 0, 200, 80)
End Sub

La figura seguente mostra l'output dell'esecuzione dell'esempio di codice precedente.

l'ellisse tradotta e trasformata

Commenti

L'origine è in genere l'angolo superiore sinistro della superficie di disegno. L'operazione di conversione consiste nel moltiplicare la matrice di trasformazione per una matrice la cui parte di traslazione è la dx e i parametri dy. Questo metodo applica la traduzione anteponendo la matrice di conversione alla matrice di trasformazione.

Vedi anche

Si applica a

TranslateTransform(Single, Single, MatrixOrder)

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

Modifica l'origine del sistema di coordinate applicando la conversione specificata alla matrice di trasformazione di questo Graphics nell'ordine specificato.

public:
 void TranslateTransform(float dx, float dy, System::Drawing::Drawing2D::MatrixOrder order);
public void TranslateTransform (float dx, float dy, System.Drawing.Drawing2D.MatrixOrder order);
member this.TranslateTransform : single * single * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub TranslateTransform (dx As Single, dy As Single, order As MatrixOrder)

Parametri

dx
Single

Coordinata x della traslazione.

dy
Single

Coordinata y della traslazione.

order
MatrixOrder

Membro dell'enumerazione MatrixOrder che specifica se la conversione viene anteporta o aggiunta alla matrice di trasformazione.

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:

  • Ruota la matrice di trasformazione globale di Windows Form di 30,0 gradiF.

  • Sposta l'origine dell'oggetto grafico chiamando TranslateTransform, aggiungendo la traduzione alla matrice di trasformazione globale.

  • Disegna un'ellisse ruotata e tradotta con una penna blu.

public:
   void TranslateTransformAngleMatrixOrder( PaintEventArgs^ e )
   {
      // Set world transform of graphics object to rotate.
      e->Graphics->RotateTransform( 30.0F );

      // Then to translate, appending to world transform.
      e->Graphics->TranslateTransform( 100.0F, 0.0F, MatrixOrder::Append );

      // Draw rotated, translated ellipse to screen.
      e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), 0, 0, 200, 80 );
   }
private void TranslateTransformAngleMatrixOrder(PaintEventArgs e)
{

    // Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F);

    // Then to translate, appending to world transform.
    e.Graphics.TranslateTransform(100.0F, 0.0F, MatrixOrder.Append);

    // Draw rotated, translated ellipse to screen.
    e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);
}
Private Sub TranslateTransformAngleMatrixOrder(ByVal e As PaintEventArgs)

    ' Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F)

    ' Then to translate, appending to world transform.
    e.Graphics.TranslateTransform(100.0F, 0.0F, MatrixOrder.Append)

    ' Draw rotated, translated ellipse to screen.
    e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), 0, 0, 200, 80)
End Sub

Commenti

L'operazione di conversione consiste nel moltiplicare la matrice di trasformazione per una matrice la cui parte di traslazione è la dx e i parametri dy. Questo metodo antepone o aggiunge la matrice di trasformazione del Graphics dalla matrice di conversione in base al parametro order.

Vedi anche

Si applica a