Pen.RotateTransform 方法

定义

将局部几何转换旋转指定角度。 此方法将旋转添加到转换前。

重载

RotateTransform(Single, MatrixOrder)

以指定顺序将局部几何变换旋转指定角度。

RotateTransform(Single)

将局部几何转换旋转指定角度。 此方法将旋转添加到转换前。

RotateTransform(Single, MatrixOrder)

Source:
Pen.cs
Source:
Pen.cs
Source:
Pen.cs

以指定顺序将局部几何变换旋转指定角度。

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)

参数

angle
Single

旋转角度。

order
MatrixOrder

一个 MatrixOrder,它指定是在后面追加旋转矩阵还是在前面添加旋转矩阵。

示例

下面的代码示例旨在与 Windows 窗体 一起使用,它需要 PaintEventArgse,这是事件处理程序的参数Paint。 此代码执行以下操作:

  • 创建一个 Pen

  • 将笔在 x 轴方向上缩放 2 倍。

  • 使用笔绘制矩形。

  • 将笔顺时针旋转 90 度。

  • 绘制第二个矩形来演示差异。

public:
   void RotateTransform_Example2( PaintEventArgs^ e )
   {
      
      // Create a Pen object.
      Pen^ rotatePen = gcnew Pen( Color::Black,5.0f );
      
      // Scale rotatePen by 2X in the x-direction.
      rotatePen->ScaleTransform( 2, 1 );
      
      // Draw a rectangle with rotatePen.
      e->Graphics->DrawRectangle( rotatePen, 10, 10, 100, 100 );
      
      // Rotate rotatePen 90 degrees clockwise.
      rotatePen->RotateTransform( 90, MatrixOrder::Append );
      
      // Draw a second rectangle with rotatePen.
      e->Graphics->DrawRectangle( rotatePen, 120, 10, 100, 100 );
   }
public void RotateTransform_Example2(PaintEventArgs e)
{
             
    // Create a Pen object.
    Pen rotatePen = new Pen(Color.Black, 5);
             
    // Scale rotatePen by 2X in the x-direction.
    rotatePen.ScaleTransform(2, 1);
             
    // Draw a rectangle with rotatePen.
    e.Graphics.DrawRectangle(rotatePen, 10, 10, 100, 100);
             
    // Rotate rotatePen 90 degrees clockwise.
    rotatePen.RotateTransform(90, MatrixOrder.Append);
             
    // Draw a second rectangle with rotatePen.
    e.Graphics.DrawRectangle(rotatePen, 120, 10, 100, 100);
}
Public Sub RotateTransform_Example2(ByVal e As PaintEventArgs)

    ' Create a Pen object.
    Dim rotatePen As New Pen(Color.Black, 5)

    ' Scale rotatePen by 2X in the x-direction.
    rotatePen.ScaleTransform(2, 1)

    ' Draw a rectangle with rotatePen.
    e.Graphics.DrawRectangle(rotatePen, 10, 10, 100, 100)

    ' Rotate rotatePen 90 degrees clockwise.
    rotatePen.RotateTransform(90, MatrixOrder.Append)

    ' Draw a second rectangle with rotatePen.
    e.Graphics.DrawRectangle(rotatePen, 120, 10, 100, 100)
End Sub

注解

由于笔的形状是圆形的,因此旋转没有任何可见效果,除非笔按 x 轴或 y 轴方向缩放。

适用于

RotateTransform(Single)

Source:
Pen.cs
Source:
Pen.cs
Source:
Pen.cs

将局部几何转换旋转指定角度。 此方法将旋转添加到转换前。

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

参数

angle
Single

旋转角度。

示例

下面的代码示例旨在与 Windows 窗体 一起使用,它需要 PaintEventArgse,这是事件处理程序的参数Paint。 此代码执行以下操作:

  • 创建一个 Pen

  • 使用笔绘制矩形。

  • 将笔在 x 轴方向上缩放 2 倍。

  • 将笔顺时针旋转 90 度。

  • 绘制第二个矩形来演示差异。

public:
   void RotateTransform_Example1( PaintEventArgs^ e )
   {
      
      // Create a Pen object.
      Pen^ rotatePen = gcnew Pen( Color::Black,5.0f );
      
      // Draw a rectangle with rotatePen.
      e->Graphics->DrawRectangle( rotatePen, 10, 10, 100, 100 );
      
      // Scale rotatePen by 2X in the x-direction.
      rotatePen->ScaleTransform( 2, 1 );
      
      // Rotate rotatePen 90 degrees clockwise.
      rotatePen->RotateTransform( 90 );
      
      // Draw a second rectangle with rotatePen.
      e->Graphics->DrawRectangle( rotatePen, 140, 10, 100, 100 );
   }
public void RotateTransform_Example1(PaintEventArgs e)
{
             
    // Create a Pen object.
    Pen rotatePen = new Pen(Color.Black, 5);
             
    // Draw a rectangle with rotatePen.
    e.Graphics.DrawRectangle(rotatePen, 10, 10, 100, 100);
             
    // Scale rotatePen by 2X in the x-direction.
    rotatePen.ScaleTransform(2, 1);
             
    // Rotate rotatePen 90 degrees clockwise.
    rotatePen.RotateTransform(90);
             
    // Draw a second rectangle with rotatePen.
    e.Graphics.DrawRectangle(rotatePen, 140, 10, 100, 100);
}
Public Sub RotateTransform_Example1(ByVal e As PaintEventArgs)

    ' Create a Pen object.
    Dim rotatePen As New Pen(Color.Black, 5)

    ' Draw a rectangle with rotatePen.
    e.Graphics.DrawRectangle(rotatePen, 10, 10, 100, 100)

    ' Scale rotatePen by 2X in the x-direction.
    rotatePen.ScaleTransform(2, 1)

    ' Rotate rotatePen 90 degrees clockwise.
    rotatePen.RotateTransform(90)

    ' Draw a second rectangle with rotatePen.
    e.Graphics.DrawRectangle(rotatePen, 140, 10, 100, 100)
End Sub

注解

由于笔的形状是圆形的,因此旋转没有任何可见效果,除非笔按 x 轴或 y 轴方向缩放。

适用于