Graphics.TranslateTransform Método

Definição

Altera a origem do sistema de coordenadas, acrescentando a tradução especificada para a matriz de transformação deste Graphics.

Sobrecargas

TranslateTransform(Single, Single)

Altera a origem do sistema de coordenadas, acrescentando a tradução especificada para a matriz de transformação deste Graphics.

TranslateTransform(Single, Single, MatrixOrder)

Altera a origem do sistema de coordenadas aplicando a tradução especificada à matriz de transformação desta Graphics na ordem especificada.

TranslateTransform(Single, Single)

Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs

Altera a origem do sistema de coordenadas, acrescentando a tradução especificada para a matriz de transformação deste 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)

Parâmetros

dx
Single

A coordenada x da tradução.

dy
Single

A coordenada y da tradução.

Exemplos

O exemplo de código a seguir foi projetado para uso com o Windows Forms e requer PaintEventArgse, que é um parâmetro do manipulador de eventos Paint. O código executa as seguintes ações:

  • Gira a matriz de transformação mundial do Windows Form em 30,0F graus.

  • Move a origem do objeto gráfico chamando TranslateTransform, acrescentando a tradução para a matriz de transformação.

  • Desenha uma elipse traduzida girada com uma caneta azul.

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

A ilustração a seguir mostra a saída da execução do exemplo de código anterior.

elipse traduzida e transformada de reticências traduzidas e transformadas

Comentários

A origem normalmente é o canto superior esquerdo da superfície de desenho. A operação de tradução consiste em multiplicar a matriz de transformação por uma matriz cuja parte de tradução é os parâmetros dx e dy. Esse método aplica a tradução anexando a matriz de tradução à matriz de transformação.

Confira também

Aplica-se a

TranslateTransform(Single, Single, MatrixOrder)

Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs

Altera a origem do sistema de coordenadas aplicando a tradução especificada à matriz de transformação desta Graphics na ordem especificada.

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)

Parâmetros

dx
Single

A coordenada x da tradução.

dy
Single

A coordenada y da tradução.

order
MatrixOrder

Membro da enumeração MatrixOrder que especifica se a tradução é acrescentada ou acrescentada à matriz de transformação.

Exemplos

O exemplo de código a seguir foi projetado para uso com o Windows Forms e requer PaintEventArgse, que é um parâmetro do manipulador de eventos Paint. O código executa as seguintes ações:

  • Gira a matriz de transformação mundial do Windows Form em 30,0F graus.

  • Move a origem do objeto gráfico chamando TranslateTransform, acrescentando a tradução à matriz de transformação mundial.

  • Desenha uma elipse girada e traduzida com uma caneta azul.

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

Comentários

A operação de tradução consiste em multiplicar a matriz de transformação por uma matriz cuja parte de tradução é os parâmetros dx e dy. Esse método acrescenta ou acrescenta a matriz de transformação do Graphics pela matriz de tradução de acordo com o parâmetro order.

Confira também

Aplica-se a