Поделиться через


LinearGradientBrush.TranslateTransform Метод

Определение

Преобразует локальное геометрическое преобразование указанными измерениями. Этот метод добавляет преобразование в преобразование.

Перегрузки

TranslateTransform(Single, Single, MatrixOrder)

Преобразует локальное геометрическое преобразование указанными измерениями в указанном порядке.

TranslateTransform(Single, Single)

Преобразует локальное геометрическое преобразование указанными измерениями. Этот метод добавляет преобразование в преобразование.

TranslateTransform(Single, Single, MatrixOrder)

Исходный код:
LinearGradientBrush.cs
Исходный код:
LinearGradientBrush.cs
Исходный код:
LinearGradientBrush.cs
Исходный код:
LinearGradientBrush.cs
Исходный код:
LinearGradientBrush.cs

Преобразует локальное геометрическое преобразование указанными измерениями в указанном порядке.

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

Значение перевода в x.

dy
Single

Значение перевода в y.

order
MatrixOrder

Порядок (предустановленный или добавленный) для применения перевода.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgseобъекта события OnPaint. Код выполняет следующие действия:

  • Создает новый LinearGradientBrush.

  • Эта кисть используется для рисования прямоугольника на экран с линейным переходом слева направо цветов.

  • Поворот LinearGradientBrush на 90 градусов и масштабирование градиента.

  • Рисует прямоугольник с повернутым и масштабируемым градиентом на экран.

  • Преобразует прямоугольник таким образом, чтобы он был линейным градиентом, работающим сверху вниз.

  • Рисует преобразованный прямоугольник на экран.

Обратите внимание, что в верхней части экрана отображаются три прямоугольника, показывающие градиент слева направо, средний, показывающий градиент с поворотом и масштабируемым градиентом, а также нижний, показывающий окончательный градиент, переведенный градиент.

private:
   void TranslateTransformExample( PaintEventArgs^ e )
   {
      // Create a LinearGradientBrush.
      Rectangle myRect = Rectangle(20,20,200,100);
      LinearGradientBrush^ myLGBrush = gcnew LinearGradientBrush( myRect,Color::Blue,Color::Red,0.0f,true );

      // Draw a rectangle to the screen using the LinearGradientBrush.
      e->Graphics->FillRectangle( myLGBrush, myRect );

      // Rotate the LinearGradientBrush.
      myLGBrush->RotateTransform( 90.0f );

      // Scale the gradient for the height of the rectangle.
      myLGBrush->ScaleTransform( 0.5f, 1.0f );

      // Draw to the screen, the rotated and scaled gradient.
      e->Graphics->FillRectangle( myLGBrush, 20, 150, 200, 100 );

      // Rejustify the brush to start at the top edge of the
      // rectangle.
      myLGBrush->TranslateTransform(  -20.0f, 0.0f );

      // Draw a third rectangle to the screen using the translated
      // brush.
      e->Graphics->FillRectangle( myLGBrush, 20, 300, 200, 100 );
   }
private void TranslateTransformExample(PaintEventArgs e)
{
             
    // Create a LinearGradientBrush.
    Rectangle myRect = new Rectangle(20, 20, 200, 100);
    LinearGradientBrush myLGBrush = new LinearGradientBrush(
        myRect, Color.Blue, Color.Red,  0.0f, true);
             
    // Draw a rectangle to the screen using the LinearGradientBrush.
    e.Graphics.FillRectangle(myLGBrush, myRect);
             
    // Rotate the LinearGradientBrush.
    myLGBrush.RotateTransform(90.0f);
             
    // Scale the gradient for the height of the rectangle.
    myLGBrush.ScaleTransform(0.5f, 1.0f);
             
    // Draw to the screen, the rotated and scaled gradient.
    e.Graphics.FillRectangle(myLGBrush, 20, 150, 200, 100);
             
    // Rejustify the brush to start at the top edge of the
    // rectangle.
    myLGBrush.TranslateTransform(-20.0f, 0.0f);
             
    // Draw a third rectangle to the screen using the translated
    // brush.
    e.Graphics.FillRectangle(myLGBrush, 20, 300, 200, 100);
}
Public Sub TranslateTransformExample(ByVal e As PaintEventArgs)

    ' Create a LinearGradientBrush.
    Dim myRect As New Rectangle(20, 20, 200, 100)
    Dim myLGBrush As New LinearGradientBrush(myRect, Color.Blue, _
    Color.Red, 0.0F, True)

    ' Draw a rectangle to the screen using the LinearGradientBrush.
    e.Graphics.FillRectangle(myLGBrush, myRect)

    ' Rotate the LinearGradientBrush.
    myLGBrush.RotateTransform(90.0F)

    ' Scale the gradient for the height of the rectangle.
    myLGBrush.ScaleTransform(0.5F, 1.0F)

    ' Draw to the screen, the rotated and scaled gradient.
    e.Graphics.FillRectangle(myLGBrush, 20, 150, 200, 100)

    ' Rejustify the brush to start at the top edge of the rectangle.
    myLGBrush.TranslateTransform(-20.0F, 0.0F)

    ' Draw a third rectangle to the screen using the translated brush.
    e.Graphics.FillRectangle(myLGBrush, 20, 300, 200, 100)
End Sub

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

TranslateTransform(Single, Single)

Исходный код:
LinearGradientBrush.cs
Исходный код:
LinearGradientBrush.cs
Исходный код:
LinearGradientBrush.cs
Исходный код:
LinearGradientBrush.cs
Исходный код:
LinearGradientBrush.cs

Преобразует локальное геометрическое преобразование указанными измерениями. Этот метод добавляет преобразование в преобразование.

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

Значение перевода в x.

dy
Single

Значение перевода в y.

Примеры

Пример см. в разделе TranslateTransform.

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