Graphics.TranslateTransform Graphics.TranslateTransform Graphics.TranslateTransform Graphics.TranslateTransform Method

定義

この Graphics の変換行列の前に指定の平行移動を付加することによって、座標系の原点を変更します。Changes the origin of the coordinate system by prepending the specified translation to the transformation matrix of this Graphics.

オーバーロード

TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder)

この Graphics の変換行列に指定の平行移動を指定の順序で適用することによって、座標系の原点を変更します。Changes the origin of the coordinate system by applying the specified translation to the transformation matrix of this Graphics in the specified order.

TranslateTransform(Single, Single) TranslateTransform(Single, Single) TranslateTransform(Single, Single) TranslateTransform(Single, Single)

この Graphics の変換行列の前に指定の平行移動を付加することによって、座標系の原点を変更します。Changes the origin of the coordinate system by prepending the specified translation to the transformation matrix of this Graphics.

TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder)

この Graphics の変換行列に指定の平行移動を指定の順序で適用することによって、座標系の原点を変更します。Changes the origin of the coordinate system by applying the specified translation to the transformation matrix of this Graphics in the specified order.

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

パラメーター

dx
Single Single Single Single

平行移動する x 座標。The x-coordinate of the translation.

dy
Single Single Single Single

平行移動する y 座標。The y-coordinate of the translation.

order
MatrixOrder MatrixOrder MatrixOrder MatrixOrder

平行移動が変換行列の前に付加されるか後に追加されるかを指定する MatrixOrder 列挙体のメンバー。Member of the MatrixOrder enumeration that specifies whether the translation is prepended or appended to the transformation matrix.

次のコード例は、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 フォームのワールド変換行列を 30.0F ° 回転します。Rotates the world transformation matrix of the Windows Form by 30.0F degrees.

  • 呼び出すことによって、グラフィックス オブジェクトの原点に移動TranslateTransform、ワールド変換行列に翻訳を追加します。Moves the graphics object's origin by calling TranslateTransform, appending the translation to the world transformation matrix.

  • 青のペン、回転、変換された楕円を描画します。Draws a rotated, translated ellipse with a blue pen.

public:
   void TranslateTransformAngleMatrixOrder( PaintEventArgs^ e )
   {
      // Set world transform of graphics object to rotate.
      e->Graphics->RotateTransform( 30.0F );

      // Then to translate, appending to world transform.
      e->Graphics->TranslateTransform( 100.0F, 0.0F, MatrixOrder::Append );

      // Draw rotated, translated ellipse to screen.
      e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), 0, 0, 200, 80 );
   }
private void TranslateTransformAngleMatrixOrder(PaintEventArgs e)
{

    // Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F);

    // Then to translate, appending to world transform.
    e.Graphics.TranslateTransform(100.0F, 0.0F, MatrixOrder.Append);

    // Draw rotated, translated ellipse to screen.
    e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);
}
Private Sub TranslateTransformAngleMatrixOrder(ByVal e As PaintEventArgs)

    ' Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F)

    ' Then to translate, appending to world transform.
    e.Graphics.TranslateTransform(100.0F, 0.0F, MatrixOrder.Append)

    ' Draw rotated, translated ellipse to screen.
    e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), 0, 0, 200, 80)
End Sub

注釈

変換操作が翻訳の部分は、行列によって変換行列の乗算では、dxdyパラメーター。The translation operation consists of multiplying the transformation matrix by a matrix whose translation part is the dx and dy parameters. このメソッドは前に付加または追加の変換行列、Graphicsに従って平行移動行列によって、orderパラメーター。This method prepends or appends the transformation matrix of the Graphics by the translation matrix according to the order parameter.

こちらもご覧ください

TranslateTransform(Single, Single) TranslateTransform(Single, Single) TranslateTransform(Single, Single) TranslateTransform(Single, Single)

この Graphics の変換行列の前に指定の平行移動を付加することによって、座標系の原点を変更します。Changes the origin of the coordinate system by prepending the specified translation to the transformation matrix of this Graphics.

public:
 void TranslateTransform(float dx, float dy);
public void TranslateTransform (float dx, float dy);
member this.TranslateTransform : single * single -> unit
Public Sub TranslateTransform (dx As Single, dy As Single)

パラメーター

dx
Single Single Single Single

平行移動する x 座標。The x-coordinate of the translation.

dy
Single Single Single Single

平行移動する y 座標。The y-coordinate of the translation.

次のコード例は、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 フォームのワールド変換行列を 30.0F ° 回転します。Rotates the world transformation matrix of the Windows Form by 30.0F degrees.

  • 呼び出すことによってグラフィックス オブジェクトの原点に移動TranslateTransform、プリペンド変換行列に変換します。Moves the origin of the graphics object by calling TranslateTransform, prepending the translation to the transformation matrix.

  • 青のペンには、変換、回転の楕円を描画します。Draws a translated, rotated ellipse with a blue pen.

public:
   void TranslateTransformAngle( PaintEventArgs^ e )
   {
      // Set world transform of graphics object to rotate.
      e->Graphics->RotateTransform( 30.0F );

      // Then to translate, prepending to world transform.
      e->Graphics->TranslateTransform( 100.0F, 0.0F );

      // Draw translated, rotated ellipse to screen.
      e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), 0, 0, 200, 80 );
   }
private void TranslateTransformAngle(PaintEventArgs e)
{

    // Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F);

    // Then to translate, prepending to world transform.
    e.Graphics.TranslateTransform(100.0F, 0.0F);

    // Draw translated, rotated ellipse to screen.
    e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);
}
Private Sub TranslateTransformAngle(ByVal e As PaintEventArgs)

    ' Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F)

    ' Then to translate, prepending to world transform.
    e.Graphics.TranslateTransform(100.0F, 0.0F)

    ' Draw translated, rotated ellipse to screen.
    e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), 0, 0, 200, 80)
End Sub

次の図は、上記のコード例を実行中の出力を示します。The following illustration shows the output of running the previous code example.

変換、変換された楕円Translated and transformed ellipse

注釈

原点は、通常、描画サーフェイスの上手左上隅にあります。The origin is typically the upper-left-hand corner of the drawing surface. 変換操作が翻訳の部分は、行列によって変換行列の乗算では、dxdyパラメーター。The translation operation consists of multiplying the transformation matrix by a matrix whose translation part is the dx and dy parameters. このメソッドを変換行列の平行移動行列を付けることによって、平行移動を適用します。This method applies the translation by prepending the translation matrix to the transformation matrix.

こちらもご覧ください

適用対象