Graphics.MultiplyTransform Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Aşırı Yüklemeler
MultiplyTransform(Matrix, MatrixOrder) |
Bu Graphics dünya dönüşümlerini çarpar ve Matrix belirtilen sırada gösterir. |
MultiplyTransform(Matrix) |
MultiplyTransform(Matrix, MatrixOrder)
- Kaynak:
- Graphics.cs
- Kaynak:
- Graphics.cs
- Kaynak:
- Graphics.cs
- Kaynak:
- Graphics.cs
- Kaynak:
- Graphics.cs
public:
void MultiplyTransform(System::Drawing::Drawing2D::Matrix ^ matrix, System::Drawing::Drawing2D::MatrixOrder order);
public void MultiplyTransform (System.Drawing.Drawing2D.Matrix matrix, System.Drawing.Drawing2D.MatrixOrder order);
member this.MultiplyTransform : System.Drawing.Drawing2D.Matrix * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub MultiplyTransform (matrix As Matrix, order As MatrixOrder)
Parametreler
- order
- MatrixOrder
Çarpma sırasını belirleyen MatrixOrder sabit listesi üyesi.
Örnekler
Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgse
gerektirir. Kod aşağıdaki eylemleri gerçekleştirir:
bir
transformMatrix
matrisi (ikiye iki kimlik matrisi ve sıfır çeviri vektörleri) oluşturur.Dönüştürme matrisini bir vektöre (200, 100) çevirir.
Windows Formunun dünya dönüştürme matrisini 30 derece döndürerek döndürme matrisini formun dönüşüm matrisine 30 derece önceler.
Döndürülen dünya dönüştürme matrisini çevrilmiş
transformMatrix
çarpar vetransformMatrix
dünya dönüştürme matrisine ekler.Döndürülmüş, çevrilmiş üç nokta çizer.
public:
void MultiplyTransformMatrixOrder( PaintEventArgs^ e )
{
// Create transform matrix.
Matrix^ transformMatrix = gcnew Matrix;
// Translate matrix, prepending translation vector.
transformMatrix->Translate( 200.0F, 100.0F );
// Rotate transformation matrix of graphics object,
// prepending rotation matrix.
e->Graphics->RotateTransform( 30.0F );
// Multiply (append to) transformation matrix of
// graphics object to translate graphics transformation.
e->Graphics->MultiplyTransform( transformMatrix, MatrixOrder::Append );
// Draw rotated, translated ellipse.
e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), -80, -40, 160, 80 );
}
private void MultiplyTransformMatrixOrder(PaintEventArgs e)
{
// Create transform matrix.
Matrix transformMatrix = new Matrix();
// Translate matrix, prepending translation vector.
transformMatrix.Translate(200.0F, 100.0F);
// Rotate transformation matrix of graphics object,
// prepending rotation matrix.
e.Graphics.RotateTransform(30.0F);
// Multiply (append to) transformation matrix of
// graphics object to translate graphics transformation.
e.Graphics.MultiplyTransform(transformMatrix, MatrixOrder.Append);
// Draw rotated, translated ellipse.
e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), -80, -40, 160, 80);
}
Private Sub MultiplyTransformMatrixOrder(ByVal e As PaintEventArgs)
' Create transform matrix.
Dim transformMatrix As New Matrix
' Translate matrix, prepending translation vector.
transformMatrix.Translate(200.0F, 100.0F)
' Rotate transformation matrix of graphics object,
' prepending rotation matrix.
e.Graphics.RotateTransform(30.0F)
' Multiply (append to) transformation matrix of
' graphics object to translate graphics transformation.
e.Graphics.MultiplyTransform(transformMatrix, MatrixOrder.Append)
' Draw rotated, translated ellipse.
e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), -80, -40, 160, 80)
End Sub
Açıklamalar
order
parametresi için Prepend değeri, çarpma sırasının x dünya dönüşümü matrix
olduğunu belirtir.
order
için Append değeri, çarpma sırasının dünya dönüşümü x matrix
olduğunu belirtir.
Ayrıca bkz.
- Dönüştürme
Matris Gösterimi
Şunlara uygulanır
MultiplyTransform(Matrix)
- Kaynak:
- Graphics.cs
- Kaynak:
- Graphics.cs
- Kaynak:
- Graphics.cs
- Kaynak:
- Graphics.cs
- Kaynak:
- Graphics.cs
public:
void MultiplyTransform(System::Drawing::Drawing2D::Matrix ^ matrix);
public void MultiplyTransform (System.Drawing.Drawing2D.Matrix matrix);
member this.MultiplyTransform : System.Drawing.Drawing2D.Matrix -> unit
Public Sub MultiplyTransform (matrix As Matrix)
Parametreler
Örnekler
Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgse
gerektirir. Kod aşağıdaki eylemleri gerçekleştirir:
bir
transformMatrix
matrisi (ikiye iki kimlik matrisi ve sıfır çeviri vektörleri) oluşturur.Dönüştürme matrisini bir vektöre (200, 100) çevirir.
Windows Formunun dünya dönüştürme matrisini 30 derece döndürür, döndürme matrisini formun dönüşüm matrisine 30 derece ekler.
Döndürülen dünya dönüştürme matrisini çevrilmiş
transformMatrix
ile çarpar vetransformMatrix
dünya dönüştürme matrisine ekler.Döndürülmüş, çevrilmiş üç nokta çizer.
public:
void MultiplyTransformMatrix( PaintEventArgs^ e )
{
// Create transform matrix.
Matrix^ transformMatrix = gcnew Matrix;
// Translate matrix, prepending translation vector.
transformMatrix->Translate( 200.0F, 100.0F );
// Rotate transformation matrix of graphics object,
// prepending rotation matrix.
e->Graphics->RotateTransform( 30.0F );
// Multiply (prepend to) transformation matrix of
// graphics object to translate graphics transformation.
e->Graphics->MultiplyTransform( transformMatrix );
// Draw rotated, translated ellipse.
e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), -80, -40, 160, 80 );
}
private void MultiplyTransformMatrix(PaintEventArgs e)
{
// Create transform matrix.
Matrix transformMatrix = new Matrix();
// Translate matrix, prepending translation vector.
transformMatrix.Translate(200.0F, 100.0F);
// Rotate transformation matrix of graphics object,
// prepending rotation matrix.
e.Graphics.RotateTransform(30.0F);
// Multiply (prepend to) transformation matrix of
// graphics object to translate graphics transformation.
e.Graphics.MultiplyTransform(transformMatrix);
// Draw rotated, translated ellipse.
e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), -80, -40, 160, 80);
}
Private Sub MultiplyTransformMatrix(ByVal e As PaintEventArgs)
' Create transform matrix.
Dim transformMatrix As New Matrix
' Translate matrix, prepending translation vector.
transformMatrix.Translate(200.0F, 100.0F)
' Rotate transformation matrix of graphics object,
' prepending rotation matrix.
e.Graphics.RotateTransform(30.0F)
' Multiply (prepend to) transformation matrix of
' graphics object to translate graphics transformation.
e.Graphics.MultiplyTransform(transformMatrix)
' Draw rotated, translated ellipse.
e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), -80, -40, 160, 80)
End Sub
Açıklamalar
Bu yöntem, matrix
parametresi tarafından belirtilen matrisin başına ekler, böylece sonuç x dünya dönüşümü matrix
olur.
Ayrıca bkz.
- Dönüştürme
Matris Gösterimi