次の方法で共有


Matrix.Translate メソッド

定義

この Matrix に、翻訳ベクトルの前に指定した翻訳ベクトルを適用します。

オーバーロード

Translate(Single, Single)

この Matrix に、指定した平行移動ベクトル (offsetX および offsetY) を翻訳ベクトルの前に置いて適用します。

Translate(Single, Single, MatrixOrder)

指定した順序で、指定した変換ベクトルをこの Matrix に適用します。

Translate(Single, Single)

ソース:
Matrix.cs
ソース:
Matrix.cs
ソース:
Matrix.cs
ソース:
Matrix.cs
ソース:
Matrix.cs

この Matrix に、指定した平行移動ベクトル (offsetX および offsetY) を翻訳ベクトルの前に置いて適用します。

public:
 void Translate(float offsetX, float offsetY);
public void Translate (float offsetX, float offsetY);
member this.Translate : single * single -> unit
Public Sub Translate (offsetX As Single, offsetY As Single)

パラメーター

offsetX
Single

この Matrixを変換する x 値。

offsetY
Single

この Matrixを変換する y 値。

例については、Translate(Single, Single, MatrixOrder)を参照してください。

適用対象

Translate(Single, Single, MatrixOrder)

ソース:
Matrix.cs
ソース:
Matrix.cs
ソース:
Matrix.cs
ソース:
Matrix.cs
ソース:
Matrix.cs

指定した順序で、指定した変換ベクトルをこの Matrix に適用します。

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

パラメーター

offsetX
Single

この Matrixを変換する x 値。

offsetY
Single

この Matrixを変換する y 値。

order
MatrixOrder

翻訳がこの Matrixに適用される順序 (追加または先頭) を指定する MatrixOrder

次のコード例は、Windows フォームで使用できるように設計されており、Paint イベント オブジェクトである PaintEventArgseが必要です。 このコードは、次のアクションを実行します。

  • 変換変換 (青い四角形) を適用する前に、画面に四角形を描画します。

  • マトリックスを作成し、両方の軸で 100 ずつ平行移動します。

  • この行列変換を四角形に適用します。

  • 変換された四角形 (赤い四角形) を画面に描画します。

赤い四角形の始点は、青い三角形の先頭から両方の軸に 100 ポイント配置されていることに注意してください。

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

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

      // Create a matrix and translate it.
      Matrix^ myMatrix = gcnew Matrix;
      myMatrix->Translate( 100, 100, MatrixOrder::Append );

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

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

    ' Create a matrix and translate it.
    Dim myMatrix As New Matrix
    myMatrix.Translate(100, 100, MatrixOrder.Append)

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

適用対象