Matrix Yapı

Tanım

2-b alanda dönüşümler için kullanılan bir 3x3 Afine dönüştürme matrisini temsil eder.Represents a 3x3 affine transformation matrix used for transformations in 2-D space.

public value class Matrix : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.MatrixConverter))]
public struct Matrix : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.MatrixConverter))]
[System.Serializable]
public struct Matrix : IFormattable
type Matrix = struct
    interface IFormattable
Public Structure Matrix
Implements IFormattable
Devralma
Matrix
Öznitelikler
Uygulamalar

Açıklamalar

Bir 3x3 matrisi, 2B2-D x-y düzledeki dönüşümler için kullanılır.A 3x3 matrix is used for transformations in a 2B2-D x-y plane. Afine dönüştürme matrisleri, döndürme ve eğriltme (yamultma) gibi herhangi bir sayıda doğrusal dönüştürme ve ardından çeviri ile çarpılarak çarpılır.Affine transformation matrices can be multiplied to form any number of linear transformations, such as rotation and skew (shear), followed by translation. Bir afin dönüştürme matrisi, son sütununa eşittir (0, 0, 1), bu nedenle yalnızca ilk iki sütundaki üyelerin belirtilmesi gerekir.An affine transformation matrix has its final column equal to (0, 0, 1), so only the members in the first two columns need to be specified. Vektörler sütun vektörlerine değil, satır vektörleri olarak ifade edilir.Note that vectors are expressed as row-vectors, not column vectors.

WPFWPF ,SatırbirincilsiparişkullanılarakdepolanırMatrix ve aşağıdaki yapıya sahiptir:A WPFWPF Matrix is stored using row-major order and has the following structure:

M11 M12 00
M21 M22 00
OffsetX OffsetY 1.1

Son satırdaki OffsetX Üyeler ve OffsetYçeviri değerlerini temsil eder.The members in the last row, OffsetX and OffsetY, represent translation values.

Yöntemlerde ve özelliklerde, dönüştürme matrisi genellikle yalnızca altı üye olan bir vektör olarak belirtilir:In methods and properties, the transformation matrix is usually specified as a vector with only six members, as follows:

(M11, M12, M21, M22, OffsetX, OffsetY)(M11, M12, M21, M22, OffsetX, OffsetY)

Tek noktaları çevirmek için doğrudan Matrix bir yapı veya MatrixTransform nesneleri dönüştürmek için kullanabilirsiniz, ancak, WPFWPF nesneleri doğrudan matrislerle çalışmasız olarak dönüştürmenizi sağlayan sınıflar kümesi de sağlar: ,,, veTranslateTransform. RotateTransform ScaleTransform SkewTransformAlthough you can use a Matrix structure directly to translate individual points, or with a MatrixTransform to transform objects, WPFWPF also provides a set of classes that enable you to transform objects without working directly with matrices: RotateTransform, ScaleTransform, SkewTransform, and TranslateTransform.

XAML Öznitelik KullanımıXAML Attribute Usage

<object property="m11, m12, m21, m22, offsetX, offsetY"/>  
- or -  
<object property="Identity"/>  

XAML DeğerleriXAML Values

m11m11
System.Double

İlk satırdaki ve bunun Matrixilk sütunundaki değer.The value in the first row and first column of this Matrix. Daha fazla bilgi için bkz M11 . özelliği.For more information, see the M11 property.

m12m12
System.Double

İlk satırdaki ve ikinci sütundaki değer.The value in the first row and second column. Daha fazla bilgi için bkz M12 . özelliği.For more information, see the M12 property.

m21m21
System.Double

İkinci satırdaki ve ilk sütundaki değer.The value in the second row and first column. Daha fazla bilgi için bkz M21 . özelliği.For more information, see the M21 property.

m22m22
System.Double

İkinci satır ve ikinci sütundaki değer.The value in the second row and second column. Daha fazla bilgi için bkz M22 . özelliği.For more information, see the M22 property.

offsetXoffsetX
System.Double

Üçüncü satırdaki ve ilk sütundaki değer.The value in the third row and first column. Daha fazla bilgi için bkz OffsetX . özelliği.For more information, see the OffsetX property.

offsetYoffsetY
System.Double

Üçüncü satır ve ikinci sütundaki değer.The value in the third row and second column. Daha fazla bilgi için bkz OffsetY . özelliği.For more information, see the OffsetY property.

Oluşturucular

Matrix(Double, Double, Double, Double, Double, Double)

Matrix Yapının yeni bir örneğini başlatır.Initializes a new instance of the Matrix structure.

Özellikler

Determinant

Bu Matrix yapının determinantı alır.Gets the determinant of this Matrix structure.

HasInverse

Bu Matrix yapının tersine çevrilebilir olup olmadığını gösteren bir değer alır.Gets a value that indicates whether this Matrix structure is invertible.

Identity

Bir kimlik Matrixalır.Gets an identity Matrix.

IsIdentity

Bu Matrix yapının bir kimlik matrisi olup olmadığını gösteren bir değer alır.Gets a value that indicates whether this Matrix structure is an identity matrix.

M11

Bu Matrix yapının ilk satırına ve ilk sütununa ait değeri alır veya ayarlar.Gets or sets the value of the first row and first column of this Matrix structure.

M12

Bu Matrix yapının ilk satırı ve ikinci sütununun değerini alır veya ayarlar.Gets or sets the value of the first row and second column of this Matrix structure.

M21

Bu Matrix yapının ikinci satırına ve ilk sütununa ait değeri alır veya ayarlar.Gets or sets the value of the second row and first column of this Matrix structure.

M22

Bu Matrix yapının ikinci satırı ve ikinci sütununun değerini alır veya ayarlar.Gets or sets the value of the second row and second column of this Matrix structure.

OffsetX

Bu Matrix yapının üçüncü satırı ve ilk sütununun değerini alır veya ayarlar.Gets or sets the value of the third row and first column of this Matrix structure.

OffsetY

Bu Matrix yapının üçüncü satırı ve ikinci sütununun değerini alır veya ayarlar.Gets or sets the value of the third row and second column of this Matrix structure.

Yöntemler

Append(Matrix)

Belirtilen Matrix yapıyı bu Matrix yapıya ekler.Appends the specified Matrix structure to this Matrix structure.

Equals(Matrix)

Belirtilen Matrix yapının bu örnekle aynı olup olmadığını belirler.Determines whether the specified Matrix structure is identical to this instance.

Equals(Matrix, Matrix)

Belirtilen Matrix iki yapının aynı olup olmadığını belirler.Determines whether the two specified Matrix structures are identical.

Equals(Object)

Belirtilen Object Matrix bunun özdeşMatrixbir yapı olup olmadığını belirler.Determines whether the specified Object is a Matrix structure that is identical to this Matrix.

GetHashCode()

Bu Matrix yapının karma kodunu döndürür.Returns the hash code for this Matrix structure.

Invert()

Bu Matrix yapıyı tersine çevirir.Inverts this Matrix structure.

Multiply(Matrix, Matrix)

Bir Matrix yapıyı başka Matrix bir yapıyla çarpar.Multiplies a Matrix structure by another Matrix structure.

Parse(String)

Bir matrisin Matrix gösterimini denk yapıya dönüştürür. StringConverts a String representation of a matrix into the equivalent Matrix structure.

Prepend(Matrix)

Belirtilen Matrix yapıyı bu Matrix yapıya önüne ekleyin.Prepends the specified Matrix structure onto this Matrix structure.

Rotate(Double)

Bu Matrix yapının kaynağı hakkında belirtilen açıya bir döndürme uygular.Applies a rotation of the specified angle about the origin of this Matrix structure.

RotateAt(Double, Double, Double)

Bu matrisi belirtilen nokta ile döndürür.Rotates this matrix about the specified point.

RotateAtPrepend(Double, Double, Double)

Bu Matrix yapıya belirtilen noktada belirtilen açının bir döndürmesini ekleyin.Prepends a rotation of the specified angle at the specified point to this Matrix structure.

RotatePrepend(Double)

Prep, belirtilen açıların bu Matrix yapıya dönüşini döndürmektedir.Prepends a rotation of the specified angle to this Matrix structure.

Scale(Double, Double)

Belirtilen ölçek vektörünü bu Matrix yapıya ekler.Appends the specified scale vector to this Matrix structure.

ScaleAt(Double, Double, Double, Double)

Bunu Matrix belirtilen nokta ile ilgili belirtilen miktarda ölçeklendirir.Scales this Matrix by the specified amount about the specified point.

ScaleAtPrepend(Double, Double, Double, Double)

Belirtilen ölçeğe göre Matrixbelirtilen ölçeğe eklenir.Prepends the specified scale about the specified point of this Matrix.

ScalePrepend(Double, Double)

Bu Matrix yapıya belirtilen ölçek vektörünü ekleyin.Prepends the specified scale vector to this Matrix structure.

SetIdentity()

Bu Matrix yapıyı bir kimlik matrisine dönüştürür.Changes this Matrix structure into an identity matrix.

Skew(Double, Double)

X ve y boyutlarında belirtilen derecenin eğriliğini bu Matrix yapıya ekler.Appends a skew of the specified degrees in the x and y dimensions to this Matrix structure.

SkewPrepend(Double, Double)

Bu Matrix yapıya x ve y boyutlarında belirtilen derecenin bir eğriliği önüne ekleyin.Prepends a skew of the specified degrees in the x and y dimensions to this Matrix structure.

ToString()

String BuMatrix yapının temsilini oluşturur.Creates a String representation of this Matrix structure.

ToString(IFormatProvider)

String BuMatrix yapının kültüre özgü biçimlendirme bilgileriyle temsilini oluşturur.Creates a String representation of this Matrix structure with culture-specific formatting information.

Transform(Point)

Belirtilen noktayı Matrix öğesine dönüştürür ve sonucu döndürür.Transforms the specified point by the Matrix and returns the result.

Transform(Point[])

Belirtilen noktaları bu Matrixşekilde dönüştürür.Transforms the specified points by this Matrix.

Transform(Vector)

Belirtilen vektörü buna Matrixgöre dönüştürür.Transforms the specified vector by this Matrix.

Transform(Vector[])

Belirtilen vektörleri bu Matrixşekilde dönüştürür.Transforms the specified vectors by this Matrix.

Translate(Double, Double)

Belirtilen uzaklıkbir çeviriyi bu Matrix yapıya ekler.Appends a translation of the specified offsets to this Matrix structure.

TranslatePrepend(Double, Double)

Prep, belirtilen uzaklıkları bu Matrix yapıya çevirecektir.Prepends a translation of the specified offsets to this Matrix structure.

İşleçler

Equality(Matrix, Matrix)

Belirtilen Matrix iki yapının aynı olup olmadığını belirler.Determines whether the two specified Matrix structures are identical.

Inequality(Matrix, Matrix)

Belirtilen Matrix iki yapının aynı olup olmadığını belirler.Determines whether the two specified Matrix structures are not identical.

Multiply(Matrix, Matrix)

Bir Matrix yapıyı başka Matrix bir yapıyla çarpar.Multiplies a Matrix structure by another Matrix structure.

Belirtik Arabirim Kullanımları

IFormattable.ToString(String, IFormatProvider)

Geçerli örneğin değerini belirtilen biçimi kullanarak biçimlendirir.Formats the value of the current instance using the specified format.

Şunlara uygulanır

Ayrıca bkz.