Aracılığıyla paylaş


PathGradientBrush.ScaleTransform Yöntem

Tanım

Yerel geometrik dönüşümü belirtilen miktarlara göre ölçeklendirir. Bu yöntem, ölçeklendirme matrisini dönüşüme ekler.

Aşırı Yüklemeler

ScaleTransform(Single, Single)

Yerel geometrik dönüşümü belirtilen miktarlara göre ölçeklendirir. Bu yöntem, ölçeklendirme matrisini dönüşüme ekler.

ScaleTransform(Single, Single, MatrixOrder)

Yerel geometrik dönüşümü belirtilen sırada belirtilen tutarlara göre ölçeklendirir.

ScaleTransform(Single, Single)

Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs

Yerel geometrik dönüşümü belirtilen miktarlara göre ölçeklendirir. Bu yöntem, ölçeklendirme matrisini dönüşüme ekler.

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)

Parametreler

sx
Single

X ekseni yönündeki dönüşüm ölçek faktörü.

sy
Single

Y ekseni yönündeki dönüşüm ölçek faktörü.

Örnekler

Bir örnek için bkz. ScaleTransform.

Şunlara uygulanır

ScaleTransform(Single, Single, MatrixOrder)

Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs
Kaynak:
PathGradientBrush.cs

Yerel geometrik dönüşümü belirtilen sırada belirtilen tutarlara göre ölçeklendirir.

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)

Parametreler

sx
Single

X ekseni yönündeki dönüşüm ölçek faktörü.

sy
Single

Y ekseni yönündeki dönüşüm ölçek faktörü.

order
MatrixOrder

Ölçeklendirme matrisinin eklenip eklenmeyeceğini veya eklenip eklenmeyeceğini belirten bir MatrixOrder.

Örnekler

Aşağıdaki kod örneği, Windows Forms ile kullanılmak üzere tasarlanmıştır ve OnPaint bir olay nesnesi PaintEventArgsegerektirir. Kod

  • Bir grafik yolu oluşturur ve buna bir dikdörtgen ekler.

  • Yol noktalarından bir PathGradientBrush oluşturur (bu örnekte, noktalar bir dikdörtgen oluşturur, ancak çoğu şekil olabilir).

  • Orta rengi kırmızıya, çevresindeki rengi maviye ayarlar.

  • Ölçek dönüşümünü uygulamadan önce PathGradientBrush ekrana çizer.

  • ScaleTransform yöntemini kullanarak ölçek dönüşümünü fırçaya uygular.

  • Fırça dikdörtgenini daha önce ekrana çizilen dikdörtgeni kaplamaz şekilde taşımak için TranslateTransform yöntemini çağırır.

  • Çevrilmiş fırça dikdörtgenini ekrana çizer.

Alt dikdörtgenin x ekseninde, çeviriden önce çizilen dikdörtgenin iki katı uzun olduğuna dikkat edin.

public:
   void ScaleTransformExample( PaintEventArgs^ e )
   {
      // Create a graphics path and add a rectangle.
      GraphicsPath^ myPath = gcnew GraphicsPath;
      Rectangle rect = Rectangle(100,20,100,50);
      myPath->AddRectangle( rect );

      // Get the path's array of points.
      array<PointF>^myPathPointArray = myPath->PathPoints;

      // Create a path gradient brush.
      PathGradientBrush^ myPGBrush = gcnew PathGradientBrush( myPathPointArray );

      // Set the color span.
      myPGBrush->CenterColor = Color::Red;
      array<Color>^ mySurroundColor = {Color::Blue};
      myPGBrush->SurroundColors = mySurroundColor;

      // Draw the brush to the screen prior to transformation.
      e->Graphics->FillRectangle( myPGBrush, 10, 10, 200, 200 );

      // Scale by a factor of 2 in the x-axis by applying the scale
      // transform to the brush.
      myPGBrush->ScaleTransform( 2, 1, MatrixOrder::Append );

      // Move the brush down by 100 by Applying the translate
      // transform to the brush.
      myPGBrush->TranslateTransform(  -100, 100, MatrixOrder::Append );

      // Draw the brush to the screen again after applying the
      // transforms.
      e->Graphics->FillRectangle( myPGBrush, 10, 10, 300, 300 );
   }
public void ScaleTransformExample(PaintEventArgs e)
{
             
    // Create a graphics path and add a rectangle.
    GraphicsPath myPath = new GraphicsPath();
    Rectangle rect = new Rectangle(100, 20, 100, 50);
    myPath.AddRectangle(rect);
             
    // Get the path's array of points.
    PointF[] myPathPointArray = myPath.PathPoints;
             
    // Create a path gradient brush.
    PathGradientBrush myPGBrush = new
        PathGradientBrush(myPathPointArray);
             
    // Set the color span.
    myPGBrush.CenterColor = Color.Red;
    Color[] mySurroundColor = {Color.Blue};
    myPGBrush.SurroundColors = mySurroundColor;
             
    // Draw the brush to the screen prior to transformation.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 200, 200);
             
    // Scale by a factor of 2 in the x-axis by applying the scale
    // transform to the brush.
    myPGBrush.ScaleTransform(2, 1, MatrixOrder.Append);
             
    // Move the brush down by 100 by Applying the translate
    // transform to the brush.
    myPGBrush.TranslateTransform(-100, 100, MatrixOrder.Append);
             
    // Draw the brush to the screen again after applying the
    // transforms.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 300, 300);
}
Public Sub ScaleTransformExample(ByVal e As PaintEventArgs)

    ' Create a graphics path and add a rectangle.
    Dim myPath As New GraphicsPath
    Dim rect As New Rectangle(100, 20, 100, 50)
    myPath.AddRectangle(rect)

    ' Get the path's array of points.
    Dim myPathPointArray As PointF() = myPath.PathPoints

    ' Create a path gradient brush.
    Dim myPGBrush As New PathGradientBrush(myPathPointArray)

    ' Set the color span.
    myPGBrush.CenterColor = Color.Red
    Dim mySurroundColor As Color() = {Color.Blue}
    myPGBrush.SurroundColors = mySurroundColor

    ' Draw the brush to the screen prior to transformation.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 200, 200)

    ' Scale by a factor of 2 in the x-axis by applying the scale
    ' transform to the brush.
    myPGBrush.ScaleTransform(2, 1, MatrixOrder.Append)

    ' Move the brush down by 100 by Applying the translate
    ' transform to the brush.
    myPGBrush.TranslateTransform(-100, 100, MatrixOrder.Append)

    ' Draw the brush to the screen again after applying the
    ' transforms.
    e.Graphics.FillRectangle(myPGBrush, 10, 10, 300, 300)
End Sub

Şunlara uygulanır