Partilhar via


Graphics.RotateTransform Método

Definição

Aplica a rotação especificada à matriz de transformação deste Graphics.

Sobrecargas

RotateTransform(Single, MatrixOrder)

Aplica a rotação especificada à matriz de transformação desse Graphics na ordem especificada.

RotateTransform(Single)

Aplica a rotação especificada à matriz de transformação deste Graphics.

RotateTransform(Single, MatrixOrder)

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

Aplica a rotação especificada à matriz de transformação desse Graphics na ordem especificada.

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)

Parâmetros

angle
Single

Ângulo de rotação em graus.

order
MatrixOrder

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

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:

  • Converte a matriz de transformação mundial do Windows Form pelo vetor (100, 0).

  • Gira a transformação do mundo por um ângulo de 30 graus, acrescentando a matriz de rotação à matriz de transformação mundial com Append.

  • Desenha uma elipse traduzida girada com uma caneta azul.

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

Comentários

A operação de rotação consiste em multiplicar a matriz de transformação por uma matriz cujos elementos são derivados do parâmetro angle. Esse método acrescenta ou acrescenta a matriz de transformação do Graphics pela matriz de rotação de acordo com o parâmetro order.

Aplica-se a

RotateTransform(Single)

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

Aplica a rotação especificada à matriz de transformação deste Graphics.

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

Parâmetros

angle
Single

Ângulo de rotação em graus.

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:

  • Converte a matriz de transformação mundial do Windows Form pelo vetor (100, 0).

  • Gira a transformação do mundo por um ângulo de 30 graus, acrescentando a matriz de rotação à matriz de transformação mundial.

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

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

Comentários

A operação de rotação consiste em multiplicar a matriz de transformação por uma matriz cujos elementos são derivados do parâmetro angle. Esse método aplica a rotação anexando-a à matriz de transformação.

Aplica-se a