Sdílet prostřednictvím


Matrix.Scale Metoda

Definice

Použije zadaný vektor měřítka na tuto Matrix tím, že předzálohuje vektor měřítka.

Přetížení

Scale(Single, Single)

Použije zadaný vektor měřítka na tuto Matrix tím, že předzálohuje vektor měřítka.

Scale(Single, Single, MatrixOrder)

Použije zadaný vektor měřítka (scaleX a scaleY) na tento Matrix pomocí zadaného pořadí.

Scale(Single, Single)

Zdroj:
Matrix.cs
Zdroj:
Matrix.cs
Zdroj:
Matrix.cs
Zdroj:
Matrix.cs
Zdroj:
Matrix.cs

Použije zadaný vektor měřítka na tuto Matrix tím, že předzálohuje vektor měřítka.

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)

Parametry

scaleX
Single

Hodnota, podle které chcete škálovat tuto Matrix ve směru osy x.

scaleY
Single

Hodnota, podle které chcete škálovat tuto Matrix ve směru osy y.

Příklady

Příklad najdete v tématu Scale(Single, Single, MatrixOrder).

Platí pro

Scale(Single, Single, MatrixOrder)

Zdroj:
Matrix.cs
Zdroj:
Matrix.cs
Zdroj:
Matrix.cs
Zdroj:
Matrix.cs
Zdroj:
Matrix.cs

Použije zadaný vektor měřítka (scaleX a scaleY) na tento Matrix pomocí zadaného pořadí.

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)

Parametry

scaleX
Single

Hodnota, podle které chcete škálovat tuto Matrix ve směru osy x.

scaleY
Single

Hodnota, podle které chcete škálovat tuto Matrix ve směru osy y.

order
MatrixOrder

MatrixOrder, která určuje pořadí (doplňovací nebo předpend), ve kterém se na tento Matrixpoužije vektor měřítka .

Příklady

Následující příklad kódu je určen pro použití s Windows Forms a vyžaduje PaintEventArgse, Paint objekt události. Kód provede následující akce:

  • Nakreslí na obrazovku obdélník před použitím transformace měřítka (modrý obdélník).

  • Vytvoří matici a škáluje ji o 3 na ose x a 2 na ose y.

  • Použije tuto maticovou transformaci na obdélník.

  • Nakreslí transformovaný obdélník na obrazovku (červený obdélník).

Všimněte si, že červený obdélník byl měřítkem 3 na ose x a o 2 v ose y včetně levého horního rohu obdélníku (počáteční bod obdélníku).

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

Platí pro