Graphics.TranslateTransform Metoda

Definice

Změní původ souřadnicového systému před vložením zadaného překladu na transformační matici tohoto Graphicsobjektu .

Přetížení

TranslateTransform(Single, Single, MatrixOrder)

Změní původ souřadnicového systému použitím zadaného překladu na transformační matici v Graphics zadaném pořadí.

TranslateTransform(Single, Single)

Změní původ souřadnicového systému před vložením zadaného překladu na transformační matici tohoto Graphicsobjektu .

TranslateTransform(Single, Single, MatrixOrder)

Zdroj:
Graphics.cs
Zdroj:
Graphics.cs
Zdroj:
Graphics.cs

Změní původ souřadnicového systému použitím zadaného překladu na transformační matici v Graphics zadaném pořadí.

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)

Parametry

dx
Single

Souřadnice x překladu

dy
Single

Souřadnice y překladu.

order
MatrixOrder

Člen výčtu MatrixOrder , který určuje, zda je překlad před nebo připojen k transformační matici.

Příklady

Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse, což je parametr obslužné rutiny Paint události. Kód provede následující akce:

  • Otočí světovou transformační matici formuláře Windows o 30,0F stupňů.

  • Přesune původ grafického objektu voláním TranslateTransformmetody a připojí překlad k matici transformace světa.

  • Nakreslí otočenou, přeloženou elipsu pomocí modrého pera.

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

Poznámky

Operace překladu se skládá z vynásobení transformační matice maticí, jejíž translační částí jsou dx parametry a dy . Tato metoda předpenduje nebo připojí transformační matici objektu Graphics pomocí matice překladu podle parametru order .

Viz také

Platí pro

TranslateTransform(Single, Single)

Zdroj:
Graphics.cs
Zdroj:
Graphics.cs
Zdroj:
Graphics.cs

Změní původ souřadnicového systému před vložením zadaného překladu na transformační matici tohoto Graphicsobjektu .

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)

Parametry

dx
Single

Souřadnice x překladu

dy
Single

Souřadnice y překladu.

Příklady

Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse, což je parametr obslužné rutiny Paint události. Kód provede následující akce:

  • Otočí světovou transformační matici formuláře Windows o 30,0F stupňů.

  • Přesune původ grafického objektu voláním TranslateTransform, před vložením překladu do transformační matice.

  • Nakreslí přeloženou, otočenou elipsu pomocí modrého pera.

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

Následující obrázek znázorňuje výstup spuštění předchozího příkladu kódu.

Přeložené a transformované elipsy

Poznámky

Počátek je obvykle levý horní roh kreslicí plochy. Operace překladu se skládá z vynásobení transformační matice maticí, jejíž translační částí jsou dx parametry a dy . Tato metoda použije překlad tak, že předloží matici překladu na transformační matici.

Viz také

Platí pro