Sdílet prostřednictvím


Graphics.TranslateTransform Metoda

Definice

Změní původ souřadnicového systému tak, že předsadí zadaný překlad do transformační matice tohoto Graphics.

Přetížení

TranslateTransform(Single, Single)

Změní původ souřadnicového systému tak, že předsadí zadaný překlad do transformační matice tohoto Graphics.

TranslateTransform(Single, Single, MatrixOrder)

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

TranslateTransform(Single, Single)

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

Změní původ souřadnicového systému tak, že předsadí zadaný překlad do transformační matice tohoto 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)

Parametry

dx
Single

Souřadnice x překladu.

dy
Single

Souřadnice překladu y.

Příklady

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

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

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

  • Nakreslí přeložené otočené tři tečky modrým perem.

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é tři tečky

Poznámky

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

Viz také

Platí pro

TranslateTransform(Single, Single, MatrixOrder)

Zdroj:
Graphics.cs
Zdroj:
Graphics.cs
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 tohoto Graphics v 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 překladu y.

order
MatrixOrder

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

Příklady

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

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

  • Přesune původ grafického objektu voláním TranslateTransform, připojení překladu do světové transformační matice.

  • Nakreslí otočené, přeložené tři tečky modrým perem.

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íž část překladu je dx a dy parametry. Tato metoda předpendí nebo připojí transformační matici Graphics pomocí matice překladu podle parametru order.

Viz také

Platí pro