Graphics.ScaleTransform Metod

Definition

Tillämpar den angivna skalningsåtgärden på transformeringsmatrisen för detta Graphics genom att lägga till den i objektets transformeringsmatris.

Överlagringar

Name Description
ScaleTransform(Single, Single)

Tillämpar den angivna skalningsåtgärden på transformeringsmatrisen för detta Graphics genom att lägga till den i objektets transformeringsmatris.

ScaleTransform(Single, Single, MatrixOrder)

Tillämpar den angivna skalningsåtgärden på transformeringsmatrisen för detta Graphics i den angivna ordningen.

ScaleTransform(Single, Single)

Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs

Tillämpar den angivna skalningsåtgärden på transformeringsmatrisen för detta Graphics genom att lägga till den i objektets transformeringsmatris.

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)

Parametrar

sx
Single

Skalningsfaktor i x-riktningen.

sy
Single

Skalningsfaktor i y-riktningen.

Exempel

Följande kodexempel är utformat för användning med Windows Forms och kräver PaintEventArgse, vilket är en parameter för händelsehanteraren Paint. Koden utför följande åtgärder:

  • Roterar matrisen för världsomvandling i Windows form med 30 grader.

  • Skalar matrisen med en faktor 3 i x-riktningen och en faktor 1 i y-riktningen genom att förebygga skalningstransformeringen.

  • Ritar en skalad, roterad rektangel med en blå penna.

Resultatet är fortfarande en rektangel.

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

Kommentarer

Skalningsåtgärden består av att multiplicera transformeringsmatrisen med en diagonal matris vars element är (sx, sy, 1). Den här metoden förbereder transformeringsmatrisen för Graphics skalningsmatrisen.

Gäller för

ScaleTransform(Single, Single, MatrixOrder)

Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs
Källa:
Graphics.cs

Tillämpar den angivna skalningsåtgärden på transformeringsmatrisen för detta Graphics i den angivna ordningen.

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)

Parametrar

sx
Single

Skalningsfaktor i x-riktningen.

sy
Single

Skalningsfaktor i y-riktningen.

order
MatrixOrder

Medlem i uppräkningen MatrixOrder som anger om skalningsåtgärden ska förberedas eller läggs till i transformeringsmatrisen.

Exempel

Följande kodexempel är utformat för användning med Windows Forms och kräver PaintEventArgse, vilket är en parameter för händelsehanteraren Paint. Koden utför följande åtgärder:

  • Roterar matrisen för världsomvandling i Windows form med 30 grader.

  • Skalar matrisen med en faktor 3 i x-riktningen och en faktor 1 i y-riktningen genom att lägga till skalningstransformeringen med Append medlemmen.

  • Ritar en roterad, skalad rektangel med en blå penna.

Resultatet är ett parallellogram.

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

Kommentarer

Skalningsåtgärden består av att multiplicera transformeringsmatrisen med en diagonal matris vars element är (sx, sy, 1). Den här metoden förbereder eller lägger till transformeringsmatrisen Graphics för skalningsmatrisen enligt parametern order .

Gäller för