Graphics.ResetTransform メソッド

定義

対象の Graphics のワールド変換行列を単位行列にリセットします。Resets the world transformation matrix of this Graphics to the identity matrix.

public:
 void ResetTransform();
public void ResetTransform ();
member this.ResetTransform : unit -> unit
Public Sub ResetTransform ()

次のコード例は、Windows フォームで使用するように設計されてい PaintEventArgs e ます。これは、イベントハンドラーのパラメーターであるを必要とし Paint ます。The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. コードは、次のアクションを実行します。The code performs the following actions:

  • Windows フォームのワールド変換をベクター (100, 0) で変換します。Translates the world transform of the Windows Form by a vector (100, 0).

  • フォームのグラフィックスの状態を保存します。Saves the graphics state of the form.

  • フォームのワールド変換を id にリセットし、四角形に単色の赤いブラシで塗りつぶします。Resets the world transform of the form to an identity and fills a rectangle with a solid red brush.

  • 変換されたグラフィックスの状態を復元し、四角形に単色の青のブラシで塗りつぶします。Restores the translated graphics state and fills a rectangle with a solid blue brush.

結果は、変換されていない赤で塗りつぶされた四角形と、変換された青で塗りつぶされた四角形になります。The result is an untranslated red-filled rectangle and a translated blue-filled rectangle.

public:
   void SaveRestore1( PaintEventArgs^ e )
   {
      // Translate transformation matrix.
      e->Graphics->TranslateTransform( 100, 0 );

      // Save translated graphics state.
      GraphicsState^ transState = e->Graphics->Save();

      // Reset transformation matrix to identity and fill rectangle.
      e->Graphics->ResetTransform();
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), 0, 0, 100, 100 );

      // Restore graphics state to translated state and fill second
      // rectangle.
      e->Graphics->Restore( transState );
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Blue ), 0, 0, 100, 100 );
   }
private void SaveRestore1(PaintEventArgs e)
{

    // Translate transformation matrix.
    e.Graphics.TranslateTransform(100, 0);

    // Save translated graphics state.
    GraphicsState transState = e.Graphics.Save();

    // Reset transformation matrix to identity and fill rectangle.
    e.Graphics.ResetTransform();
    e.Graphics.FillRectangle(new SolidBrush(Color.Red), 0, 0, 100, 100);

    // Restore graphics state to translated state and fill second

    // rectangle.
    e.Graphics.Restore(transState);
    e.Graphics.FillRectangle(new SolidBrush(Color.Blue), 0, 0, 100, 100);
}
Private Sub SaveRestore1(ByVal e As PaintEventArgs)

    ' Translate transformation matrix.
    e.Graphics.TranslateTransform(100, 0)

    ' Save translated graphics state.
    Dim transState As GraphicsState = e.Graphics.Save()

    ' Reset transformation matrix to identity and fill rectangle.
    e.Graphics.ResetTransform()
    e.Graphics.FillRectangle(New SolidBrush(Color.Red), 0, 0, 100, 100)

    ' Restore graphics state to translated state and fill second

    ' rectangle.
    e.Graphics.Restore(transState)
    e.Graphics.FillRectangle(New SolidBrush(Color.Blue), 0, 0, _
    100, 100)
End Sub

注釈

Id 行列は、スケーリング、回転、または変換を行わない変換を表します。The identity matrix represents a transformation with no scaling, rotation, or translation. こののワールド変換を id 行列にリセットすると、変換された Graphics 項目のジオメトリがワールド変換によって変化しないことを意味します。Resetting the world transformation of this Graphics to the identity matrix means that its world transformation does not change the geometry of transformed items.

適用対象