Graphics.TranslateTransform Metod

Definition

Ändrar koordinatsystemets ursprung genom att vänta på den angivna översättningen till transformeringsmatrisen för detta Graphics.

Överlagringar

Name Description
TranslateTransform(Single, Single, MatrixOrder)

Ändrar koordinatsystemets ursprung genom att tillämpa den angivna översättningen på transformeringsmatrisen för detta Graphics i den angivna ordningen.

TranslateTransform(Single, Single)

Ändrar koordinatsystemets ursprung genom att vänta på den angivna översättningen till transformeringsmatrisen för detta Graphics.

TranslateTransform(Single, Single, MatrixOrder)

Ändrar koordinatsystemets ursprung genom att tillämpa den angivna översättningen på transformeringsmatrisen för detta Graphics i den angivna ordningen.

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)

Parametrar

dx
Single

X-koordinaten för översättningen.

dy
Single

Y-koordinaten för översättningen.

order
MatrixOrder

Medlem i uppräkningen MatrixOrder som anger om översättningen ska förberedas eller läggs till i transformeringsmatrisen.

Exempel

Följande kodexempel är utformat för användning med Windows Forms och kräver PaintEventArgse, vilket är en parameter för händelsehanteraren Paint. Koden utför följande åtgärder:

  • Roterar matrisen för världstransformeringen för Windows-formuläret med 30,0F grader.

  • Flyttar grafikobjektets ursprung genom att anropa TranslateTransformoch lägga till översättningen till världsomvandlingsmatrisen.

  • Ritar en roterad, översatt ellips med en blå penna.

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

Kommentarer

Översättningsåtgärden består av att multiplicera transformeringsmatrisen med en matris vars översättningsdel är parametrarna dx och dy . Den här metoden förbereder eller lägger till transformeringsmatrisen Graphics för översättningsmatrisen enligt parametern order .

Se även

Gäller för

TranslateTransform(Single, Single)

Ändrar koordinatsystemets ursprung genom att vänta på den angivna översättningen till transformeringsmatrisen för detta 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)

Parametrar

dx
Single

X-koordinaten för översättningen.

dy
Single

Y-koordinaten för översättningen.

Exempel

Följande kodexempel är utformat för användning med Windows Forms och kräver PaintEventArgse, vilket är en parameter för händelsehanteraren Paint. Koden utför följande åtgärder:

  • Roterar matrisen för världstransformeringen för Windows-formuläret med 30,0F grader.

  • Flyttar ursprunget för grafikobjektet genom att anropa TranslateTransformoch föregår översättningen till transformeringsmatrisen.

  • Ritar en översatt, roterad ellips med en blå penna.

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

Följande bild visar utdata från körning av föregående kodexempel.

Översatt och transformerad ellips

Kommentarer

Ursprunget är vanligtvis det övre vänstra hörnet på ritytan. Översättningsåtgärden består av att multiplicera transformeringsmatrisen med en matris vars översättningsdel är parametrarna dx och dy . Den här metoden tillämpar översättningen genom att lägga till översättningsmatrisen i transformeringsmatrisen.

Se även

Gäller för