Bagikan melalui


Graphics.TranslateTransform Metode

Definisi

Mengubah asal sistem koordinat dengan menambahkan terjemahan yang ditentukan ke matriks transformasi Graphicsini.

Overload

TranslateTransform(Single, Single)

Mengubah asal sistem koordinat dengan menambahkan terjemahan yang ditentukan ke matriks transformasi Graphicsini.

TranslateTransform(Single, Single, MatrixOrder)

Mengubah asal sistem koordinat dengan menerapkan terjemahan yang ditentukan ke matriks transformasi Graphics ini dalam urutan yang ditentukan.

TranslateTransform(Single, Single)

Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs

Mengubah asal sistem koordinat dengan menambahkan terjemahan yang ditentukan ke matriks transformasi Graphicsini.

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)

Parameter

dx
Single

Koordinat x terjemahan.

dy
Single

Koordinat y dari terjemahan.

Contoh

Contoh kode berikut dirancang untuk digunakan dengan Windows Forms, dan memerlukan PaintEventArgse, yang merupakan parameter penanganan aktivitas Paint. Kode melakukan tindakan berikut:

  • Memutar matriks transformasi dunia Dari Formulir Windows sebesar 30,0F derajat.

  • Memindahkan asal objek grafis dengan memanggil TranslateTransform, sebelum penerjemahan ke matriks transformasi.

  • Menggambar elips yang diterjemahkan dan diputar dengan pena biru.

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

Ilustrasi berikut menunjukkan output menjalankan contoh kode sebelumnya.

Elips yang diterjemahkan dan diubah

Keterangan

Asalnya biasanya adalah sudut kiri atas permukaan gambar. Operasi terjemahan terdiri dari mengalikan matriks transformasi dengan matriks yang bagian terjemahannya adalah parameter dx dan dy. Metode ini menerapkan terjemahan dengan menambahkan matriks terjemahan sebelumnya ke matriks transformasi.

Lihat juga

Berlaku untuk

TranslateTransform(Single, Single, MatrixOrder)

Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs

Mengubah asal sistem koordinat dengan menerapkan terjemahan yang ditentukan ke matriks transformasi Graphics ini dalam urutan yang ditentukan.

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)

Parameter

dx
Single

Koordinat x terjemahan.

dy
Single

Koordinat y dari terjemahan.

order
MatrixOrder

Anggota enumerasi MatrixOrder yang menentukan apakah terjemahan telah ditambahkan sebelumnya atau ditambahkan ke matriks transformasi.

Contoh

Contoh kode berikut dirancang untuk digunakan dengan Windows Forms, dan memerlukan PaintEventArgse, yang merupakan parameter penanganan aktivitas Paint. Kode melakukan tindakan berikut:

  • Memutar matriks transformasi dunia Dari Formulir Windows sebesar 30,0F derajat.

  • Memindahkan asal objek grafis dengan memanggil TranslateTransform, menambahkan terjemahan ke matriks transformasi dunia.

  • Menggambar elips yang diputar dan diterjemahkan dengan pena biru.

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

Keterangan

Operasi terjemahan terdiri dari mengalikan matriks transformasi dengan matriks yang bagian terjemahannya adalah parameter dx dan dy. Metode ini menambahkan atau menambahkan matriks transformasi Graphics oleh matriks terjemahan sesuai dengan parameter order.

Lihat juga

Berlaku untuk