Graphics.TranslateTransform Metoda

Definicja

Zmienia początek układu współrzędnych, poprzedzając określone tłumaczenie macierzy przekształceń tego Graphicselementu .

Przeciążenia

TranslateTransform(Single, Single, MatrixOrder)

Zmienia początek układu współrzędnych, stosując określone tłumaczenie do macierzy przekształceń tej Graphics funkcji w określonej kolejności.

TranslateTransform(Single, Single)

Zmienia początek układu współrzędnych, poprzedzając określone tłumaczenie macierzy przekształceń tego Graphicselementu .

TranslateTransform(Single, Single, MatrixOrder)

Zmienia początek układu współrzędnych, stosując określone tłumaczenie do macierzy przekształceń tej Graphics funkcji w określonej kolejności.

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)

Parametry

dx
Single

Współrzędna x tłumaczenia.

dy
Single

Współrzędna y tłumaczenia.

order
MatrixOrder

Element członkowski MatrixOrder wyliczenia, który określa, czy translacja jest dołączana do macierzy przekształceń, czy dołączana.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z Windows Forms i wymaga PaintEventArgs eparametru Paint programu obsługi zdarzeń. Kod wykonuje następujące akcje:

  • Obraca macierz transformacji świata Windows Form o 30,0F stopni.

  • Przenosi początek obiektu graficznego przez wywołanie TranslateTransformmetody , dołączając tłumaczenie do macierzy transformacji świata.

  • Rysuje obrócony, przetłumaczony wielokropek niebieskim piórem.

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

Uwagi

Operacja tłumaczenia składa się z mnożenia macierzy przekształcania przez macierz, której częścią tłumaczenia jest dx parametr i dy . Ta metoda poprzedza lub dołącza macierz Graphics przekształcania przez macierz tłumaczenia zgodnie z parametrem order .

Zobacz też

Dotyczy

TranslateTransform(Single, Single)

Zmienia początek układu współrzędnych, poprzedzając określone tłumaczenie macierzy przekształceń tego Graphicselementu .

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)

Parametry

dx
Single

Współrzędna x tłumaczenia.

dy
Single

Współrzędna y tłumaczenia.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z Windows Forms i wymaga PaintEventArgs eparametru Paint programu obsługi zdarzeń. Kod wykonuje następujące akcje:

  • Obraca macierz transformacji świata Windows Form o 30,0F stopni.

  • Przenosi początek obiektu graficznego przez wywołanie TranslateTransformmetody , a następnie przeniesienie translacji do macierzy przekształceń.

  • Rysuje przetłumaczony, obrócony wielokropek niebieskim piórem.

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

Na poniższej ilustracji przedstawiono dane wyjściowe uruchomienia poprzedniego przykładu kodu.

Przetłumaczony i przekształcony wielokropek

Uwagi

Początek to zazwyczaj lewy górny róg powierzchni rysunku. Operacja tłumaczenia składa się z mnożenia macierzy przekształcania przez macierz, której częścią tłumaczenia jest dx parametr i dy . Ta metoda stosuje tłumaczenie przez wstępne dodawanie macierzy tłumaczenia do macierzy przekształcania.

Zobacz też

Dotyczy