Bagikan melalui


Graphics.RotateTransform Metode

Definisi

Menerapkan rotasi yang ditentukan ke matriks transformasi ini Graphics.

Overload

RotateTransform(Single)

Menerapkan rotasi yang ditentukan ke matriks transformasi ini Graphics.

RotateTransform(Single, MatrixOrder)

Menerapkan rotasi yang ditentukan ke matriks transformasi ini Graphics dalam urutan yang ditentukan.

RotateTransform(Single)

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

Menerapkan rotasi yang ditentukan ke matriks transformasi ini Graphics.

public:
 void RotateTransform(float angle);
public void RotateTransform (float angle);
member this.RotateTransform : single -> unit
Public Sub RotateTransform (angle As Single)

Parameter

angle
Single

Sudut rotasi dalam derajat.

Contoh

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

  • Menerjemahkan matriks transformasi dunia dari Formulir Windows oleh vektor (100, 0).

  • Memutar transformasi dunia dengan sudut 30 derajat, mendahului matriks rotasi ke matriks transformasi dunia.

  • Menggambar elips yang diputar dan diterjemahkan dengan pena biru.

public:
   void RotateTransformAngle( PaintEventArgs^ e )
   {
      // Set world transform of graphics object to translate.
      e->Graphics->TranslateTransform( 100.0F, 0.0F );

      // Then to rotate, prepending rotation matrix.
      e->Graphics->RotateTransform( 30.0F );

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

    // Set world transform of graphics object to translate.
    e.Graphics.TranslateTransform(100.0F, 0.0F);

    // Then to rotate, prepending rotation matrix.
    e.Graphics.RotateTransform(30.0F);

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

    ' Set world transform of graphics object to translate.
    e.Graphics.TranslateTransform(100.0F, 0.0F)

    ' Then to rotate, prepending rotation matrix.
    e.Graphics.RotateTransform(30.0F)

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

Keterangan

Operasi rotasi terdiri dari mengalikan matriks transformasi dengan matriks yang elemennya berasal dari angle parameter . Metode ini menerapkan rotasi dengan menambahkannya ke matriks transformasi.

Berlaku untuk

RotateTransform(Single, MatrixOrder)

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

Menerapkan rotasi yang ditentukan ke matriks transformasi ini Graphics dalam urutan yang ditentukan.

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

Parameter

angle
Single

Sudut rotasi dalam derajat.

order
MatrixOrder

Anggota MatrixOrder enumerasi yang menentukan apakah rotasi ditambahkan atau diawali dengan transformasi matriks.

Contoh

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

  • Menerjemahkan matriks transformasi dunia dari Formulir Windows oleh vektor (100, 0).

  • Memutar transformasi dunia dengan sudut 30 derajat, menambahkan matriks rotasi ke matriks transformasi dunia dengan Append.

  • Menggambar elips yang diterjemahkan dan diputar dengan pena biru.

public:
   void RotateTransformAngleMatrixOrder( PaintEventArgs^ e )
   {
      // Set world transform of graphics object to translate.
      e->Graphics->TranslateTransform( 100.0F, 0.0F );

      // Then to rotate, appending rotation matrix.
      e->Graphics->RotateTransform( 30.0F, MatrixOrder::Append );

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

    // Set world transform of graphics object to translate.
    e.Graphics.TranslateTransform(100.0F, 0.0F);

    // Then to rotate, appending rotation matrix.
    e.Graphics.RotateTransform(30.0F, MatrixOrder.Append);

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

    ' Set world transform of graphics object to translate.
    e.Graphics.TranslateTransform(100.0F, 0.0F)

    ' Then to rotate, appending rotation matrix.
    e.Graphics.RotateTransform(30.0F, MatrixOrder.Append)

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

Keterangan

Operasi rotasi terdiri dari mengalikan matriks transformasi dengan matriks yang elemennya berasal dari angle parameter . Metode ini menambahkan atau menambahkan matriks transformasi dari Graphics oleh matriks rotasi sesuai dengan order parameter .

Berlaku untuk