Matrix.Scale 메서드

정의

배율 벡터를 앞에 추가하여 지정된 배율 벡터를 이 Matrix에 적용합니다.Applies the specified scale vector to this Matrix by prepending the scale vector.

오버로드

Scale(Single, Single)

배율 벡터를 앞에 추가하여 지정된 배율 벡터를 이 Matrix에 적용합니다.Applies the specified scale vector to this Matrix by prepending the scale vector.

Scale(Single, Single, MatrixOrder)

지정된 순서대로 지정된 배율 벡터(scaleXscaleY)를 이 Matrix에 적용합니다.Applies the specified scale vector (scaleX and scaleY) to this Matrix using the specified order.

Scale(Single, Single)

배율 벡터를 앞에 추가하여 지정된 배율 벡터를 이 Matrix에 적용합니다.Applies the specified scale vector to this Matrix by prepending the scale vector.

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)

매개 변수

scaleX
Single

X축 방향으로 이 Matrix의 배율을 조정할 값입니다.The value by which to scale this Matrix in the x-axis direction.

scaleY
Single

Y축 방향으로 이 Matrix의 배율을 조정할 값입니다.The value by which to scale this Matrix in the y-axis direction.

예제

예제를 보려면 Scale(Single, Single, MatrixOrder)를 참조하세요.For an example, see Scale(Single, Single, MatrixOrder).

Scale(Single, Single, MatrixOrder)

지정된 순서대로 지정된 배율 벡터(scaleXscaleY)를 이 Matrix에 적용합니다.Applies the specified scale vector (scaleX and scaleY) to this Matrix using the specified order.

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)

매개 변수

scaleX
Single

X축 방향으로 이 Matrix의 배율을 조정할 값입니다.The value by which to scale this Matrix in the x-axis direction.

scaleY
Single

Y축 방향으로 이 Matrix의 배율을 조정할 값입니다.The value by which to scale this Matrix in the y-axis direction.

order
MatrixOrder

MatrixOrder에 배율 벡터가 적용되는 순서(뒤나 앞에 추가)를 지정하는 Matrix입니다.A MatrixOrder that specifies the order (append or prepend) in which the scale vector is applied to this Matrix.

예제

다음 코드 예제는 Windows Forms에서 사용 하도록 설계 되었으며 필요 PaintEventArgs e, Paint 이벤트 개체입니다.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, an Paint event object. 이 코드에서는 다음 작업을 수행합니다.The code performs the following actions:

  • 크기 조정 변환을 (파란색 사각형)를 적용 하기 전에 화면에 사각형을 그립니다.Draws a rectangle to the screen prior to applying a scaling transform (the blue rectangle).

  • 행렬을 만들고 x 축 및 y 축에서 2 확장 합니다.Creates a matrix and scales it by 3 in the x-axis and 2 in the y-axis.

  • 이 매트릭스 변환을 사각형에 적용 됩니다.Applies this matrix transform to the rectangle.

  • 화면 (빨간색 사각형)으로 변환된 된 사각형을 그립니다.Draws the transformed rectangle to the screen (the red rectangle).

사각형 (사각형의 시작 지점)의 왼쪽 위 모서리를 포함 하 여 y 축에서 2 및 3 x 축에서의 비율로 빨간색 사각형 크기가 조정 되었는지 확인 합니다.Notice that the red rectangle has been scaled by a factor of 3 in the x-axis and by 2 in the y-axis, including the upper left-hand corner of the rectangle (the beginning point of the rectangle).

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

적용 대상