Matrix Yapı
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.
2-B alanda dönüşümler için kullanılan 3x3 benze dönüştürme matrisi temsil eder.
public value class Matrix : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.MatrixConverter))]
[System.Serializable]
public struct Matrix : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.MatrixConverter))]
public struct Matrix : IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.MatrixConverter))>]
[<System.Serializable>]
type Matrix = struct
interface IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.MatrixConverter))>]
type Matrix = struct
interface IFormattable
Public Structure Matrix
Implements IFormattable
- Devralma
- Öznitelikler
- Uygulamalar
Açıklamalar
2-B x-y düzleminde dönüşümler için 3x3 matrisi kullanılır. Veri dönüştürme matrisleri, döndürme ve eğme (kesme) gibi herhangi bir sayıda doğrusal dönüşümü ve ardından çeviriyi oluşturmak için çarpılabilir. Bir benzeşim dönüştürme matrisinin son sütunu (0, 0, 1) olduğundan yalnızca ilk iki sütundaki üyelerin belirtilmesi gerekir. Vektörlerin sütun vektörleri olarak değil satır vektörleri olarak ifade edildiğine dikkat edin.
WPF Matrix , satır ana sırası kullanılarak depolanır ve aşağıdaki yapıya sahiptir:
M11 | M12 | 0 |
M21 | M22 | 0 |
OffsetX | OffsetY | 1 |
Son satırdaki ve OffsetYüyeleri çeviri OffsetX değerlerini temsil eder.
Yöntemlerde ve özelliklerde dönüştürme matrisi genellikle yalnızca altı üyeye sahip bir vektör olarak belirtilir:
(M11, M12, M21, M22, OffsetX, OffsetY)
Tek tek noktaları çevirmek için veya nesneleri dönüştürmek için bir yapıyı doğrudan kullanabilirsinizMatrix, ancak WPF ayrıca, matrislerle doğrudan çalışmadan nesneleri dönüştürmenizi sağlayan bir sınıf kümesi de sağlar: RotateTransform, ScaleTransform, SkewTransformve TranslateTransform.MatrixTransform
XAML Öznitelik Kullanımı
<object property="m11, m12, m21, m22, offsetX, offsetY"/>
- or -
<object property="Identity"/>
XAML Değerleri
m11
System.Double
Bu Matrixöğesinin ilk satırındaki ve ilk sütunundaki değer. Daha fazla bilgi için özelliğine M11 bakın.
m12
System.Double
İlk satır ve ikinci sütundaki değer. Daha fazla bilgi için özelliğine M12 bakın.
m21
System.Double
İkinci satır ve ilk sütundaki değer. Daha fazla bilgi için özelliğine M21 bakın.
m22
System.Double
İkinci satır ve ikinci sütundaki değer. Daha fazla bilgi için özelliğine M22 bakın.
Offsetx
System.Double
Üçüncü satır ve ilk sütundaki değer. Daha fazla bilgi için özelliğine OffsetX bakın.
Offsety
System.Double
Üçüncü satır ve ikinci sütundaki değer. Daha fazla bilgi için özelliğine OffsetY bakın.
Oluşturucular
Matrix(Double, Double, Double, Double, Double, Double) |
Yapının yeni bir örneğini Matrix başlatır. |
Özellikler
Determinant |
Bu Matrix yapının determinantını alır. |
HasInverse |
Bu Matrix yapının ters çevrilemez olup olmadığını gösteren bir değer alır. |
Identity |
Bir kimlik Matrixalır. |
IsIdentity |
Bu Matrix yapının bir kimlik matrisi olup olmadığını gösteren bir değer alır. |
M11 |
Bu Matrix yapının ilk satırının ve ilk sütununun değerini alır veya ayarlar. |
M12 |
Bu Matrix yapının ilk satırının ve ikinci sütununun değerini alır veya ayarlar. |
M21 |
Bu Matrix yapının ikinci satırının ve ilk sütununun değerini alır veya ayarlar. |
M22 |
Bu Matrix yapının ikinci satırının ve ikinci sütununun değerini alır veya ayarlar. |
OffsetX |
Bu Matrix yapının üçüncü satırının ve ilk sütununun değerini alır veya ayarlar. |
OffsetY |
Bu Matrix yapının üçüncü satırının ve ikinci sütununun değerini alır veya ayarlar. |
Yöntemler
Append(Matrix) | |
Equals(Matrix) |
Belirtilen Matrix yapının bu örnekle aynı olup olmadığını belirler. |
Equals(Matrix, Matrix) |
Belirtilen Matrix iki yapının aynı olup olmadığını belirler. |
Equals(Object) |
Belirtilen Object öğesinin bu Matrixile aynı olan bir Matrix yapı olup olmadığını belirler. |
GetHashCode() |
Bu Matrix yapı için karma kodu döndürür. |
Invert() |
Bu Matrix yapıyı ters çevirir. |
Multiply(Matrix, Matrix) | |
Parse(String) |
Matrisin gösterimini String eşdeğer Matrix yapıya dönüştürür. |
Prepend(Matrix) | |
Rotate(Double) |
Bu Matrix yapının başlangıcı hakkında belirtilen açının döndürmesini uygular. |
RotateAt(Double, Double, Double) |
Bu matrisi belirtilen nokta hakkında döndürür. |
RotateAtPrepend(Double, Double, Double) |
Belirtilen açının belirtilen noktadaki döndürmesini bu Matrix yapıya önceden ekler. |
RotatePrepend(Double) |
Belirtilen açının döndürmesini bu Matrix yapıya ekler. |
Scale(Double, Double) |
Belirtilen ölçek vektörlerini bu Matrix yapıya ekler. |
ScaleAt(Double, Double, Double, Double) |
Bunu Matrix , belirtilen nokta hakkında belirtilen miktara göre ölçeklendirir. |
ScaleAtPrepend(Double, Double, Double, Double) |
Bu öğesinin belirtilen noktası hakkında belirtilen ölçeğin başına Matrixekler. |
ScalePrepend(Double, Double) |
Belirtilen ölçek vektörün başına bu Matrix yapı ekler. |
SetIdentity() |
Bu Matrix yapıyı bir kimlik matrisine değiştirir. |
Skew(Double, Double) |
X ve y boyutlarında belirtilen derecelerin çarpıklıklarını bu Matrix yapıya ekler. |
SkewPrepend(Double, Double) |
X ve y boyutlarında belirtilen derecelerin çarpıklıklarını bu Matrix yapıya ekler. |
ToString() | |
ToString(IFormatProvider) |
Kültüre özgü biçimlendirme bilgileriyle bu Matrix yapının bir String gösterimini oluşturur. |
Transform(Point) |
Belirtilen noktayı tarafından Matrix dönüştürür ve sonucu döndürür. |
Transform(Point[]) |
Belirtilen noktaları bu Matrixile dönüştürür. |
Transform(Vector) |
Belirtilen vektörü bu Matrixile dönüştürür. |
Transform(Vector[]) |
Belirtilen vektörleri bu Matrixile dönüştürür. |
Translate(Double, Double) |
Belirtilen uzaklıkların çevirisini bu Matrix yapıya ekler. |
TranslatePrepend(Double, Double) |
Belirtilen uzaklıkların çevirisini bu Matrix yapıya önceden ekler. |
İşleçler
Equality(Matrix, Matrix) |
Belirtilen Matrix iki yapının aynı olup olmadığını belirler. |
Inequality(Matrix, Matrix) |
Belirtilen Matrix iki yapının özdeş olup olmadığını belirler. |
Multiply(Matrix, Matrix) |
Belirtik Arabirim Kullanımları
IFormattable.ToString(String, IFormatProvider) |
Belirtilen biçimi kullanarak geçerli örneğin değerini biçimlendirebilir. |