Aracılığıyla paylaş


Matrix Yapı

Tanım

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
Matrix
Ö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)

Belirtilen Matrix yapıyı bu Matrix yapıya ekler.

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)

Bir yapıyı başka Matrix bir Matrix yapıyla çarpar.

Parse(String)

Matrisin gösterimini String eşdeğer Matrix yapıya dönüştürür.

Prepend(Matrix)

Belirtilen Matrix yapıyı bu Matrix yapıya ekler.

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()

Bu Matrix yapının bir String gösterimini oluşturur.

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)

Bir yapıyı başka Matrix bir Matrix yapıyla çarpar.

Belirtik Arabirim Kullanımları

IFormattable.ToString(String, IFormatProvider)

Belirtilen biçimi kullanarak geçerli örneğin değerini biçimlendirebilir.

Şunlara uygulanır

Ayrıca bkz.