Graphics.TranslateTransform Graphics.TranslateTransform Graphics.TranslateTransform Graphics.TranslateTransform Method

Определение

Изменяет начало координат координатной системы путем добавления заданного сдвига к матрице преобразования данного объекта Graphics.Changes the origin of the coordinate system by prepending the specified translation to the transformation matrix of this Graphics.

Перегрузки

TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder)

Изменяет начало координат координатной системы путем применения заданного сдвига к матрице преобразования данного объекта Graphics в указываемом порядке.Changes the origin of the coordinate system by applying the specified translation to the transformation matrix of this Graphics in the specified order.

TranslateTransform(Single, Single) TranslateTransform(Single, Single) TranslateTransform(Single, Single) TranslateTransform(Single, Single)

Изменяет начало координат координатной системы путем добавления заданного сдвига к матрице преобразования данного объекта Graphics.Changes the origin of the coordinate system by prepending the specified translation to the transformation matrix of this Graphics.

TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder) TranslateTransform(Single, Single, MatrixOrder)

Изменяет начало координат координатной системы путем применения заданного сдвига к матрице преобразования данного объекта Graphics в указываемом порядке.Changes the origin of the coordinate system by applying the specified translation to the transformation matrix of this Graphics in the specified order.

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)

Параметры

dx
Single Single Single Single

Координата X сдвига.The x-coordinate of the translation.

dy
Single Single Single Single

Координата Y сдвига.The y-coordinate of the translation.

order
MatrixOrder MatrixOrder MatrixOrder MatrixOrder

Член перечисления MatrixOrder, указывающий на порядок добавления сдвига к матрице преобразования: обычный или обратный.Member of the MatrixOrder enumeration that specifies whether the translation is prepended or appended to the transformation matrix.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgs e, что Paint является параметром обработчика событий.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Код выполняет следующие действия.The code performs the following actions:

  • Поворачивает матрицу универсального преобразования Windows Form, 30,0 на F градусы.Rotates the world transformation matrix of the Windows Form by 30.0F degrees.

  • Перемещает источник объекта Graphics путем вызова TranslateTransform, добавляя перевод в матрицу мирового преобразования.Moves the graphics object's origin by calling TranslateTransform, appending the translation to the world transformation matrix.

  • Рисует повернутый, преобразованный эллипс с помощью синего пера.Draws a rotated, translated ellipse with a blue pen.

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

Комментарии

Операция преобразования состоит из умножения матрицы преобразования на матрицу, часть перевода которой является dx параметрами и. dyThe translation operation consists of multiplying the transformation matrix by a matrix whose translation part is the dx and dy parameters. Этот метод добавляет матрицу преобразования объекта в Graphics конец или добавляет ее матрицу перевода в соответствии order с параметром.This method prepends or appends the transformation matrix of the Graphics by the translation matrix according to the order parameter.

Дополнительно

TranslateTransform(Single, Single) TranslateTransform(Single, Single) TranslateTransform(Single, Single) TranslateTransform(Single, Single)

Изменяет начало координат координатной системы путем добавления заданного сдвига к матрице преобразования данного объекта Graphics.Changes the origin of the coordinate system by prepending the specified translation to the transformation matrix of this 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)

Параметры

dx
Single Single Single Single

Координата X сдвига.The x-coordinate of the translation.

dy
Single Single Single Single

Координата Y сдвига.The y-coordinate of the translation.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgs e, что Paint является параметром обработчика событий.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Код выполняет следующие действия.The code performs the following actions:

  • Поворачивает матрицу универсального преобразования Windows Form, 30,0 на F градусы.Rotates the world transformation matrix of the Windows Form by 30.0F degrees.

  • Перемещает источник объекта Graphics путем вызова TranslateTransform, предмещая перевод в матрицу преобразования.Moves the origin of the graphics object by calling TranslateTransform, prepending the translation to the transformation matrix.

  • Рисует переведенный, повернутый эллипс с синим пером.Draws a translated, rotated ellipse with a blue pen.

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

На следующем рисунке показаны выходные данные выполнения предыдущего примера кода.The following illustration shows the output of running the previous code example.

Переведенный и преобразованный эллипсTranslated and transformed ellipse

Комментарии

Источник обычно является верхним левым углом области рисования.The origin is typically the upper-left-hand corner of the drawing surface. Операция преобразования состоит из умножения матрицы преобразования на матрицу, часть перевода которой является dx параметрами и. dyThe translation operation consists of multiplying the transformation matrix by a matrix whose translation part is the dx and dy parameters. Этот метод применяет преобразование, добавляя матрицу перевода к матрице преобразования.This method applies the translation by prepending the translation matrix to the transformation matrix.

Дополнительно

Применяется к