Matrix.Scale Methode

Definition

Weist den angegebenen Skalierungsvektor dieser Matrix zu, wobei der Skalierungsvektor vorangestellt wird.

Überlädt

Scale(Single, Single)

Weist den angegebenen Skalierungsvektor dieser Matrix zu, wobei der Skalierungsvektor vorangestellt wird.

Scale(Single, Single, MatrixOrder)

Weist den angegebenen Skalierungsvektor (scaleX und scaleY) der Matrix in der angegebenen Reihenfolge zu.

Scale(Single, Single)

Quelle:
Matrix.cs
Quelle:
Matrix.cs
Quelle:
Matrix.cs

Weist den angegebenen Skalierungsvektor dieser Matrix zu, wobei der Skalierungsvektor vorangestellt wird.

public:
 void Scale(float scaleX, float scaleY);
public void Scale (float scaleX, float scaleY);
member this.Scale : single * single -> unit
Public Sub Scale (scaleX As Single, scaleY As Single)

Parameter

scaleX
Single

Der Wert für die Skalierung dieser Matrix in Richtung der x-Achse.

scaleY
Single

Der Wert für die Skalierung dieser Matrix in Richtung der y-Achse.

Beispiele

Ein Beispiel finden Sie unter Scale(Single, Single, MatrixOrder).

Gilt für:

Scale(Single, Single, MatrixOrder)

Quelle:
Matrix.cs
Quelle:
Matrix.cs
Quelle:
Matrix.cs

Weist den angegebenen Skalierungsvektor (scaleX und scaleY) der Matrix in der angegebenen Reihenfolge zu.

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

Parameter

scaleX
Single

Der Wert für die Skalierung dieser Matrix in Richtung der x-Achse.

scaleY
Single

Der Wert für die Skalierung dieser Matrix in Richtung der y-Achse.

order
MatrixOrder

Eine MatrixOrder, die die Reihenfolge angibt (angefügt oder vorangestellt), in der der Skalierungsvektor der Matrix zugewiesen wird.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgseein Paint Ereignisobjekt. Der Code führt die folgenden Aktionen aus:

  • Zeichnet vor dem Anwenden einer Skalierungstransformation (blaues Rechteck) ein Rechteck auf den Bildschirm.

  • Erstellt eine Matrix und skaliert sie um 3 auf der x-Achse und 2 in der y-Achse.

  • Wendet diese Matrixtransformation auf das Rechteck an.

  • Zeichnet das transformierte Rechteck auf den Bildschirm (das rote Rechteck).

Beachten Sie, dass das rote Rechteck um den Faktor 3 in der x-Achse und um 2 in der y-Achse skaliert wurde, einschließlich der oberen linken Ecke des Rechtecks (dem Anfangspunkt des Rechtecks).

public:
   void ScaleExample( PaintEventArgs^ e )
   {
      Pen^ myPen = gcnew Pen( Color::Blue,1.0f );
      Pen^ myPen2 = gcnew Pen( Color::Red,1.0f );

      // Draw the rectangle to the screen before applying the
      // transform.
      e->Graphics->DrawRectangle( myPen, 50, 50, 100, 100 );

      // Create a matrix and scale it.
      Matrix^ myMatrix = gcnew Matrix;
      myMatrix->Scale( 3, 2, MatrixOrder::Append );

      // Draw the rectangle to the screen again after applying the
      // transform.
      e->Graphics->Transform = myMatrix;
      e->Graphics->DrawRectangle( myPen2, 50, 50, 100, 100 );
   }
public void ScaleExample(PaintEventArgs e)
{
    Pen myPen = new Pen(Color.Blue, 1);
    Pen myPen2 = new Pen(Color.Red, 1);
             
    // Draw the rectangle to the screen before applying the
    // transform.
    e.Graphics.DrawRectangle(myPen, 50, 50, 100, 100);
             
    // Create a matrix and scale it.
    Matrix myMatrix = new Matrix();
    myMatrix.Scale(3, 2, MatrixOrder.Append);
             
    // Draw the rectangle to the screen again after applying the
    // transform.
    e.Graphics.Transform = myMatrix;
    e.Graphics.DrawRectangle(myPen2, 50, 50, 100, 100);
}
Public Sub ScaleExample(ByVal e As PaintEventArgs)
    Dim myPen As New Pen(Color.Blue, 1)
    Dim myPen2 As New Pen(Color.Red, 1)

    ' Draw the rectangle to the screen before applying the
    ' transform.
    e.Graphics.DrawRectangle(myPen, 50, 50, 100, 100)

    ' Create a matrix and scale it.
    Dim myMatrix As New Matrix
    myMatrix.Scale(3, 2, MatrixOrder.Append)

    ' Draw the rectangle to the screen again after applying the
    ' transform.
    e.Graphics.Transform = myMatrix
    e.Graphics.DrawRectangle(myPen2, 50, 50, 100, 100)
End Sub

Gilt für: