Matrix.Shear 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
전단 벡터를 앞에 추가하여 지정된 전단 벡터를 이 Matrix 적용합니다.
오버로드
Shear(Single, Single) |
전단 변환 앞에 추가하여 지정된 전단 벡터를 이 Matrix 적용합니다. |
Shear(Single, Single, MatrixOrder) |
지정된 전단 벡터를 지정된 순서로 이 Matrix 적용합니다. |
Shear(Single, Single)
- Source:
- Matrix.cs
- Source:
- Matrix.cs
- Source:
- Matrix.cs
- Source:
- Matrix.cs
- Source:
- Matrix.cs
전단 변환 앞에 추가하여 지정된 전단 벡터를 이 Matrix 적용합니다.
public:
void Shear(float shearX, float shearY);
public void Shear (float shearX, float shearY);
member this.Shear : single * single -> unit
Public Sub Shear (shearX As Single, shearY As Single)
매개 변수
- shearX
- Single
가로 전단 계수입니다.
- shearY
- Single
세로 전단 계수입니다.
예제
다음 코드 예제는 Windows Forms에서 사용하도록 설계되었으며 Paint 이벤트 개체인 PaintEventArgse
필요합니다. 코드는 다음 작업을 수행합니다.
크기 조정 변환을 적용하기 전에 녹색 펜을 사용하여 화면에 사각형을 그립니다.
빨간색 펜을 사용하여 다른 사각형을 그립니다.
파란색 펜을 사용하여 타원을 그립니다.
그 결과 녹색 사각형, 빨간색 병렬 프로그래밍 및 변형된 파란색 줄임표가 생성됩니다. 녹색 사각형(변환을 설정하기 전에 그린)은 DrawRectangle 호출에 제공된 좌표를 직접 사용합니다. 다른 두 그림은 그리기 전에 변환됩니다. 사각형은 병렬 변환(빨간색)으로 변환되고 타원(파란색)은 변환된 병렬 프로그래밍에 맞게 변환됩니다. 사각형의 아래쪽이 x축에서 사각형 높이의 2배로 이동(전단)되므로 병렬 이동이 형성됩니다.
public:
void MatrixShearExample( PaintEventArgs^ e )
{
Matrix^ myMatrix = gcnew Matrix;
myMatrix->Shear( 2, 0 );
e->Graphics->DrawRectangle( gcnew Pen( Color::Green ), 0, 0, 100, 50 );
e->Graphics->MultiplyTransform( myMatrix );
e->Graphics->DrawRectangle( gcnew Pen( Color::Red ), 0, 0, 100, 50 );
e->Graphics->DrawEllipse( gcnew Pen( Color::Blue ), 0, 0, 100, 50 );
}
public void MatrixShearExample(PaintEventArgs e)
{
Matrix myMatrix = new Matrix();
myMatrix.Shear(2, 0);
e.Graphics.DrawRectangle(new Pen(Color.Green), 0, 0, 100, 50);
e.Graphics.MultiplyTransform(myMatrix);
e.Graphics.DrawRectangle(new Pen(Color.Red), 0, 0, 100, 50);
e.Graphics.DrawEllipse(new Pen(Color.Blue), 0, 0, 100, 50);
}
Public Sub MatrixShearExample(ByVal e As PaintEventArgs)
Dim myMatrix As New Matrix
myMatrix.Shear(2, 0)
e.Graphics.DrawRectangle(New Pen(Color.Green), 0, 0, 100, 50)
e.Graphics.MultiplyTransform(myMatrix)
e.Graphics.DrawRectangle(New Pen(Color.Red), 0, 0, 100, 50)
e.Graphics.DrawEllipse(New Pen(Color.Blue), 0, 0, 100, 50)
End Sub
설명
이 메서드에 적용된 변환은 매개 변수 중 하나가 0인 경우에만 순수 전단입니다. 원점의 사각형에 적용되며, shearY
인수가 0이면 변환은 사각형 높이의 shearX
배씩 아래쪽 가장자리를 가로로 이동합니다.
shearX
인수가 0이면 오른쪽 가장자리를 직사각형 너비의 shearY
배씩 세로로 이동합니다. 결과가 예측하기 어렵기 때문에 두 매개 변수가 모두 0이 아닌 경우 주의해야 합니다. 예를 들어 두 요소가 모두 1이면 변환이 단수(따라서 반전할 수 없음)이며 전체 평면을 한 줄로 압착합니다.
적용 대상
Shear(Single, Single, MatrixOrder)
- Source:
- Matrix.cs
- Source:
- Matrix.cs
- Source:
- Matrix.cs
- Source:
- Matrix.cs
- Source:
- Matrix.cs
지정된 전단 벡터를 지정된 순서로 이 Matrix 적용합니다.
public:
void Shear(float shearX, float shearY, System::Drawing::Drawing2D::MatrixOrder order);
public void Shear (float shearX, float shearY, System.Drawing.Drawing2D.MatrixOrder order);
member this.Shear : single * single * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub Shear (shearX As Single, shearY As Single, order As MatrixOrder)
매개 변수
- shearX
- Single
가로 전단 계수입니다.
- shearY
- Single
세로 전단 계수입니다.
- order
- MatrixOrder
전단이 적용되는 순서(추가 또는 앞에 추가)를 지정하는 MatrixOrder.
예제
예제는 Shear(Single, Single)참조하세요.
설명
이 메서드에 적용된 변환은 매개 변수 중 하나가 0인 경우에만 순수 전단입니다. 원점의 사각형에 적용되며, shearY
인수가 0이면 변환은 사각형 높이의 shearX
배씩 아래쪽 가장자리를 가로로 이동합니다.
shearX
인수가 0이면 오른쪽 가장자리를 직사각형 너비의 shearY
배씩 세로로 이동합니다. 결과가 예측하기 어렵기 때문에 두 매개 변수가 모두 0이 아닌 경우 주의해야 합니다. 예를 들어 두 요소가 모두 1이면 변환이 단수(따라서 반전할 수 없음)이며 전체 평면을 한 줄로 압착합니다.
적용 대상
.NET