Matrix.Translate Methode

Definition

Weist den angegebenen Verschiebungsvektor dieser Matrix zu, wobei der Verschiebungsvektor vorangestellt wird.

Überlädt

Translate(Single, Single)

Weist den angegebenen Verschiebungsvektor (offsetX und offsetY) dieser Matrix zu, wobei der Vektor vorangestellt wird.

Translate(Single, Single, MatrixOrder)

Weist den angegebenen Verschiebungsvektor dieser Matrix in der angegebenen Reihenfolge zu.

Translate(Single, Single)

Weist den angegebenen Verschiebungsvektor (offsetX und offsetY) dieser Matrix zu, wobei der Vektor vorangestellt wird.

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)

Parameter

offsetX
Single

Der x-Wert, um den die Matrix verschoben wird.

offsetY
Single

Der y-Wert, um den die Matrix verschoben wird.

Beispiele

Ein Beispiel finden Sie unter Translate(Single, Single, MatrixOrder).

Gilt für:

Translate(Single, Single, MatrixOrder)

Weist den angegebenen Verschiebungsvektor dieser Matrix in der angegebenen Reihenfolge zu.

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)

Parameter

offsetX
Single

Der x-Wert, um den die Matrix verschoben wird.

offsetY
Single

Der y-Wert, um den die Matrix verschoben wird.

order
MatrixOrder

Eine MatrixOrder, die die Reihenfolge angibt (angefügt oder vorangestellt), in der die Verschiebung dieser Matrix zugewiesen wird.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgs eein Paint Ereignisobjekt. Der Code führt die folgenden Aktionen aus:

  • Zeichnet ein Rechteck vor dem Anwenden einer Übersetzungstransformation (das blaue Rechteck) auf den Bildschirm.

  • Erstellt eine Matrix und übersetzt sie um 100 in beiden Achsen.

  • Wendet diese Matrixtransformation auf das Rechteck an,

  • Zeichnet das transformierte Rechteck auf den Bildschirm (das rote Rechteck).

Beachten Sie, dass der Anfang des roten Rechtecks 100 Punkte in beiden Achsen vom Anfang des blauen Dreiecks befindet.

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

Gilt für: