Matrix.Rotate Metod

Definition

Tillämpar en medurs rotation av den angivna vinkeln om ursprunget för detta Matrix.

Överlagringar

Name Description
Rotate(Single)

Förbered till detta Matrix en medsols rotation, runt ursprunget och med den angivna vinkeln.

Rotate(Single, MatrixOrder)

Tillämpar en medurs rotation av en mängd som anges i parametern angle , runt ursprunget (noll x och y koordinater) för detta Matrix.

Rotate(Single)

Förbered till detta Matrix en medsols rotation, runt ursprunget och med den angivna vinkeln.

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

Parametrar

angle
Single

Rotationsvinkeln, i grader.

Exempel

Ett exempel finns i Rotate(Single, MatrixOrder).

Gäller för

Rotate(Single, MatrixOrder)

Tillämpar en medurs rotation av en mängd som anges i parametern angle , runt ursprunget (noll x och y koordinater) för detta Matrix.

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

Parametrar

angle
Single

Rotationens vinkel (omfattning) i grader.

order
MatrixOrder

A MatrixOrder som anger den ordning (tillägg eller prepend) där rotationen tillämpas på detta Matrix.

Exempel

Följande kodexempel är utformat för användning med Windows Forms och kräver PaintEventArgse, ett Paint händelseobjekt. Koden utför följande åtgärder:

  • Ritar en rektangel till skärmen innan du tillämpar en rotationstransformation (den blå rektangeln).

  • Skapar en matris och roterar den 45 grader.

  • Tillämpar den här matristransformen på rektangeln.

  • Ritar den transformerade rektangeln till skärmen (den röda rektangeln).

Observera att den röda rektangeln har roterats runt koordinaterna på 0, 0 skärmar.

public:
   void RotateExample( PaintEventArgs^ e )
   {
      Pen^ myPen = gcnew Pen( Color::Blue,1.0f );
      Pen^ myPen2 = gcnew Pen( Color::Red,1.0f );

      // Draw the rectangle to the screen before applying the transform.
      e->Graphics->DrawRectangle( myPen, 150, 50, 200, 100 );

      // Create a matrix and rotate it 45 degrees.
      Matrix^ myMatrix = gcnew Matrix;
      myMatrix->Rotate( 45, MatrixOrder::Append );

      // Draw the rectangle to the screen again after applying the
      // transform.
      e->Graphics->Transform = myMatrix;
      e->Graphics->DrawRectangle( myPen2, 150, 50, 200, 100 );
   }
public void RotateExample(PaintEventArgs e)
{
    Pen myPen = new Pen(Color.Blue, 1);
    Pen myPen2 = new Pen(Color.Red, 1);
             
    // Draw the rectangle to the screen before applying the transform.
    e.Graphics.DrawRectangle(myPen, 150, 50, 200, 100);
             
    // Create a matrix and rotate it 45 degrees.
    Matrix myMatrix = new Matrix();
    myMatrix.Rotate(45, MatrixOrder.Append);
             
    // Draw the rectangle to the screen again after applying the
             
    // transform.
    e.Graphics.Transform = myMatrix;
    e.Graphics.DrawRectangle(myPen2, 150, 50, 200, 100);
}
Public Sub RotateExample(ByVal e As PaintEventArgs)
    Dim myPen As New Pen(Color.Blue, 1)
    Dim myPen2 As New Pen(Color.Red, 1)

    ' Draw the rectangle to the screen before applying the transform.
    e.Graphics.DrawRectangle(myPen, 150, 50, 200, 100)

    ' Create a matrix and rotate it 45 degrees.
    Dim myMatrix As New Matrix
    myMatrix.Rotate(45, MatrixOrder.Append)

    ' Draw the rectangle to the screen again after applying the
    ' transform.
    e.Graphics.Transform = myMatrix
    e.Graphics.DrawRectangle(myPen2, 150, 50, 200, 100)
End Sub

Gäller för