Graphics.ScaleTransform Metoda

Definicja

Stosuje określoną operację skalowania do macierzy przekształceń tej Graphics funkcji, poprzedzając ją macierzą przekształcania obiektu.

Przeciążenia

ScaleTransform(Single, Single)

Stosuje określoną operację skalowania do macierzy przekształceń tej Graphics funkcji, poprzedzając ją macierzą przekształcania obiektu.

ScaleTransform(Single, Single, MatrixOrder)

Stosuje określoną operację skalowania do macierzy transformacji tego Graphics elementu w określonej kolejności.

ScaleTransform(Single, Single)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Stosuje określoną operację skalowania do macierzy przekształceń tej Graphics funkcji, poprzedzając ją macierzą przekształcania obiektu.

public:
 void ScaleTransform(float sx, float sy);
public void ScaleTransform (float sx, float sy);
member this.ScaleTransform : single * single -> unit
Public Sub ScaleTransform (sx As Single, sy As Single)

Parametry

sx
Single

Współczynnik skalowania w kierunku x.

sy
Single

Współczynnik skalowania w kierunku y.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z Windows Forms i wymaga PaintEventArgseparametru Paint programu obsługi zdarzeń. Kod wykonuje następujące akcje:

  • Obraca macierz transformacji świata formularza systemu Windows o 30 stopni.

  • Skaluje ten macierz przez współczynnik 3 w kierunku x i współczynnik 1 w kierunku y przez wstępne przekształcenie skalowania.

  • Rysuje skalowany, obracany prostokąt z niebieskim piórem.

Wynik jest nadal prostokątem.

public:
   void ScaleTransformFloat( PaintEventArgs^ e )
   {
      // Set world transform of graphics object to rotate.
      e->Graphics->RotateTransform( 30.0F );

      // Then to scale, prepending to world transform.
      e->Graphics->ScaleTransform( 3.0F, 1.0F );

      // Draw scaled, rotated rectangle to screen.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Blue,3.0f ), 50, 0, 100, 40 );
   }
private void ScaleTransformFloat(PaintEventArgs e)
{

    // Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F);

    // Then to scale, prepending to world transform.
    e.Graphics.ScaleTransform(3.0F, 1.0F);

    // Draw scaled, rotated rectangle to screen.
    e.Graphics.DrawRectangle(new Pen(Color.Blue, 3), 50, 0, 100, 40);
}
Private Sub ScaleTransformFloat(ByVal e As PaintEventArgs)

    ' Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F)

    ' Then to scale, prepending to world transform.
    e.Graphics.ScaleTransform(3.0F, 1.0F)

    ' Draw scaled, rotated rectangle to screen.
    e.Graphics.DrawRectangle(New Pen(Color.Blue, 3), 50, 0, 100, 40)
End Sub

Uwagi

Operacja skalowania składa się z mnożenia macierzy transformacji przez macierz ukośną, której elementy to (sx, , sy1). Ta metoda poprzedza macierz Graphics przekształceń macierzy skalowania.

Dotyczy

ScaleTransform(Single, Single, MatrixOrder)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Stosuje określoną operację skalowania do macierzy transformacji tego Graphics elementu w określonej kolejności.

public:
 void ScaleTransform(float sx, float sy, System::Drawing::Drawing2D::MatrixOrder order);
public void ScaleTransform (float sx, float sy, System.Drawing.Drawing2D.MatrixOrder order);
member this.ScaleTransform : single * single * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub ScaleTransform (sx As Single, sy As Single, order As MatrixOrder)

Parametry

sx
Single

Współczynnik skalowania w kierunku x.

sy
Single

Współczynnik skalowania w kierunku y.

order
MatrixOrder

MatrixOrder Element członkowski wyliczenia, który określa, czy operacja skalowania jest wstępnego lub dołączona do macierzy przekształceń.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z Windows Forms i wymaga PaintEventArgseparametru Paint programu obsługi zdarzeń. Kod wykonuje następujące akcje:

  • Obraca macierz transformacji świata formularza systemu Windows o 30 stopni.

  • Skaluje ten macierz przez współczynnik 3 w kierunku x i współczynnik 1 w kierunku y, dołączając transformację skalowania z elementem Append członkowskim.

  • Rysuje obrócony, skalowany prostokąt z niebieskim piórem.

Wynik jest równoległym.

public:
   void ScaleTransformFloatMatrixOrder( PaintEventArgs^ e )
   {
      // Set world transform of graphics object to rotate.
      e->Graphics->RotateTransform( 30.0F );

      // Then to scale, appending to world transform.
      e->Graphics->ScaleTransform( 3.0F, 1.0F, MatrixOrder::Append );

      // Draw rotated, scaled rectangle to screen.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Blue,3.0f ), 50, 0, 100, 40 );
   }
private void ScaleTransformFloatMatrixOrder(PaintEventArgs e)
{

    // Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F);

    // Then to scale, appending to world transform.
    e.Graphics.ScaleTransform(3.0F, 1.0F, MatrixOrder.Append);

    // Draw rotated, scaled rectangle to screen.
    e.Graphics.DrawRectangle(new Pen(Color.Blue, 3), 50, 0, 100, 40);
}
Private Sub ScaleTransformFloatMatrixOrder(ByVal e As PaintEventArgs)

    ' Set world transform of graphics object to rotate.
    e.Graphics.RotateTransform(30.0F)

    ' Then to scale, appending to world transform.
    e.Graphics.ScaleTransform(3.0F, 1.0F, MatrixOrder.Append)

    ' Draw rotated, scaled rectangle to screen.
    e.Graphics.DrawRectangle(New Pen(Color.Blue, 3), 50, 0, 100, 40)
End Sub

Uwagi

Operacja skalowania składa się z mnożenia macierzy transformacji przez macierz ukośną, której elementy to (sx, , sy1). Ta metoda poprzedza lub dołącza macierz Graphics transformacji według macierzy skalowania zgodnie z parametrem order .

Dotyczy