Matrix.Shear Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Применяет к этому Matrix указанный вектор шеи путем подготовки к этому вектора.
Перегрузки
| Имя | Описание |
|---|---|
| Shear(Single, Single) |
Применяет к этому Matrix указанный вектор стрижения путем подготовки преобразования шери. |
| Shear(Single, Single, MatrixOrder) |
Применяет к этому Matrix указанный вектор сдвига в указанном порядке. |
Shear(Single, Single)
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- 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 и требуется PaintEventArgse, объект события Paint. Код выполняет следующее действие:
Рисует прямоугольник на экран с помощью зеленого пера перед применением преобразования масштабирования.
Matrix Создает и использует его для задания преобразования координат мира для .Graphics
Рисует другой прямоугольник с помощью красного пера.
Рисует многоточие с помощью синего пера.
Результатом является зеленый прямоугольник, красная параллелограмма и преобразованная синяя многоточие. Обратите внимание, что зеленый прямоугольник (нарисованный до настройки преобразования) напрямую использует координаты, предоставленные в вызове DrawRectangle . Остальные две цифры преобразуются до рисования. Прямоугольник преобразуется в параллелограмму (красный), а многоточие (синий) преобразуется в преобразованную параллелограмму. Обратите внимание, что нижняя часть прямоугольника перемещается (срезается) в оси x с коэффициентом в два раза больше высоты прямоугольника, таким образом формируя параллелограмму.
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 по ширине прямоугольника. Осторожность заключается в том, что оба параметра являются ненулевой, так как результаты трудно прогнозировать. Например, если оба фактора имеют значение 1, преобразование является сингулярным (следовательно, неинвертируемым), сжимая всю плоскость до одной строки.
Применяется к
Shear(Single, Single, MatrixOrder)
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- Matrix.cs
- Исходный код:
- 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 по ширине прямоугольника. Осторожность заключается в том, что оба параметра являются ненулевой, так как результаты трудно прогнозировать. Например, если оба фактора имеют значение 1, преобразование является сингулярным (следовательно, неинвертируемым), сжимая всю плоскость до одной строки.