Graphics.RotateTransform メソッド (Single, MatrixOrder)
この Graphics オブジェクトの変換行列に、指定した回転を指定した順序で適用します。
Overloads Public Sub RotateTransform( _
ByVal angle As Single, _ ByVal order As MatrixOrder _)
[C#]
public void RotateTransform(floatangle,MatrixOrderorder);
[C++]
public: void RotateTransform(floatangle,MatrixOrderorder);
[JScript]
public function RotateTransform(
angle : float,order : MatrixOrder);
パラメータ
- angle
回転角度。 - order
回転が行列変換の後ろに追加されるか前に付加されるかを指定する MatrixOrder 列挙体のメンバ。
戻り値
このメソッドは値を返しません。
解説
回転操作では、変換行列と各要素が angle パラメータから派生した行列を乗算します。このメソッドは、order パラメータに従って、 Graphics オブジェクトの変換行列と回転行列を前乗算 (前に付加) または後乗算 (後ろに追加) します。
使用例
[Visual Basic, C#] 次の例は、Windows フォームでの使用を意図してデザインされており、 Paint イベント ハンドラのパラメータである PaintEventArgs e が必要です。このコードは次のアクションを実行します。
- ベクタ (100, 0) で Windows フォームのワールド変換行列を平行移動します。
- ワールド変換を 30 度回転して、 MatrixOrder.Append でその回転行列をワールド変換行列に追加します。
- 回転して平行移動した楕円を青のペンで描画します。
Public Sub RotateTransformAngleMatrixOrder(e As PaintEventArgs)
' Set world transform of graphics object to translate.
e.Graphics.TranslateTransform(100F, 0F)
' Then to rotate, appending rotation matrix.
e.Graphics.RotateTransform(30F, MatrixOrder.Append)
' Draw translated, rotated ellipse to screen.
e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), 0, 0, 200, 80)
End Sub
[C#]
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(new Pen(Color.Blue, 3), 0, 0, 200, 80);
}
[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
参照
Graphics クラス | Graphics メンバ | System.Drawing 名前空間 | Graphics.RotateTransform オーバーロードの一覧