Matrix3D Struktura

Definicja

Reprezentuje macierz 4 x 4 używaną do przekształceń w przestrzeni 3-W.

public value class Matrix3D : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))]
[System.Serializable]
public struct Matrix3D : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))]
public struct Matrix3D : IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))>]
[<System.Serializable>]
type Matrix3D = struct
    interface IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))>]
type Matrix3D = struct
    interface IFormattable
Public Structure Matrix3D
Implements IFormattable
Dziedziczenie
Matrix3D
Atrybuty
Implementuje

Przykłady

// Multiplies a Vector3D by a Matrix3D using the static Multiply method.  
// Returns a Vector3D.

Vector3D vector1 = new Vector3D(20, 30, 40);
Matrix3D matrix1 = new Matrix3D(10, 10, 10, 0, 20, 20, 20, 0, 30, 30, 30, 0, 5, 10, 15, 1);
Vector3D vectorResult = new Vector3D();

vectorResult = Vector3D.Multiply(vector1,matrix1);
// vector Result is equal to (2000, 2000, 2000)
' Multiplies a Vector3D by a Matrix3D using the static Multiply method.  
' Returns a Vector3D.

Dim vector1 As New Vector3D(20, 30, 40)
Dim matrix1 As New Matrix3D(10, 10, 10, 0, 20, 20, 20, 0, 30, 30, 30, 0, 5, 10, 15, 1)
Dim vectorResult As New Vector3D()

vectorResult = Vector3D.Multiply(vector1,matrix1)
' vector Result is equal to (2000, 2000, 2000)

Uwagi

Matrix3D ma następującą składnię wektorów wierszy:

M11 M12 M13 M14
M21 M22 M23 M24
M31 M32 M33 M34
OffsetX OffsetY OffsetZ M44

Należy pamiętać, że ponieważ czwarta kolumna jest również dostępna, macierz umożliwia deweloperom reprezentowanie affine, a także transformacji innych niż affine.

Macierze można dołączać lub dołączać do innych macierzy. Dołączanie macierzy A do macierzy B oznacza przekształcenie przez B, a następnie przez A:

Użycie atrybutu języka XAML

<object property="m11, m12, m13, m21, m22, m23, m31, m32, m33, offsetX, offsetY, offsetZ"/>  
- or -  
<object property="Identity"/>  

Wartości XAML

M11
System.Double

Wartość w pierwszym wierszu i pierwszej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M11 właściwość .

M12
System.Double

Wartość w pierwszym wierszu i drugiej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M12 właściwość .

M13
System.Double

Wartość w pierwszym wierszu i trzeciej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M13 właściwość .

M14
System.Double

Wartość w pierwszym wierszu i czwartej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M14 właściwość .

M21
System.Double

Wartość w drugim wierszu i pierwszej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M21 właściwość .

M22
System.Double

Wartość w drugim wierszu i drugiej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M22 właściwość .

M23
System.Double

Wartość w drugim wierszu i trzeciej kolumnie tego Matrix3D. Aby uzyskać więcej informacji, zobacz M23 właściwość .

M24
System.Double

Wartość w drugim wierszu i czwartej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M24 właściwość .

M31
System.Double

Wartość w trzecim wierszu i pierwszej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M31 właściwość .

M32
System.Double

Wartość w trzecim wierszu i drugiej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M32 właściwość .

M33
System.Double

Wartość w trzecim wierszu i trzeciej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M34 właściwość .

M34
System.Double

Wartość w trzecim wierszu i czwartej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M33 właściwość .

M44
System.Double

Wartość w czwartym wierszu i czwartej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz M44 właściwość .

przesunięcie X
System.Double

Wartość w czwartym wierszu i pierwszej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz OffsetX właściwość .

offsetY
System.Double

Wartość w czwartym wierszu i drugiej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz OffsetY właściwość .

offsetZ
System.Double

Wartość w czwartym wierszu i trzeciej kolumnie tego Matrix3Delementu . Aby uzyskać więcej informacji, zobacz OffsetZ właściwość .

Konstruktory

Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double)

Konstruktor, który ustawia wartości początkowe macierzy.

Właściwości

Determinant

Pobiera determinant tej Matrix3D struktury.

HasInverse

Pobiera wartość wskazującą, czy jest to Matrix3D nieodwracalne.

Identity

Matrix3D Zmienia strukturę na tożsamość Matrix3D.

IsAffine

Pobiera wartość wskazującą, czy ta Matrix3D struktura jest affine.

IsIdentity

Określa, czy ta Matrix3D struktura jest tożsamością Matrix3D.

M11

Pobiera lub ustawia wartość pierwszego wiersza i pierwszej kolumny tej Matrix3D struktury.

M12

Pobiera lub ustawia wartość pierwszego wiersza i drugiej kolumny tej Matrix3D struktury.

M13

Pobiera lub ustawia wartość pierwszego wiersza i trzeciej kolumny tej Matrix3D struktury.

M14

Pobiera lub ustawia wartość pierwszego wiersza i czwartej kolumny tej Matrix3D struktury.

M21

Pobiera lub ustawia wartość drugiego wiersza i pierwszej kolumny tej Matrix3D struktury.

M22

Pobiera lub ustawia wartość drugiego wiersza i drugiej kolumny tej Matrix3D struktury.

M23

Pobiera lub ustawia wartość drugiego wiersza i trzeciej kolumny tej Matrix3D struktury.

M24

Pobiera lub ustawia wartość drugiego wiersza i czwartej kolumny tej Matrix3D struktury.

M31

Pobiera lub ustawia wartość trzeciego wiersza i pierwszej kolumny tej Matrix3D struktury.

M32

Pobiera lub ustawia wartość trzeciego wiersza i drugiej kolumny tej Matrix3D struktury.

M33

Pobiera lub ustawia wartość trzeciego wiersza i trzeciej kolumny tej Matrix3D struktury.

M34

Pobiera lub ustawia wartość trzeciego wiersza i czwartej kolumny tej Matrix3D struktury.

M44

Pobiera lub ustawia wartość czwartego wiersza i czwartej kolumny tej Matrix3D struktury.

OffsetX

Pobiera lub ustawia wartość czwartego wiersza i pierwszej kolumny tej Matrix3D struktury.

OffsetY

Pobiera lub ustawia wartość czwartego wiersza i drugiej kolumny tej Matrix3D struktury.

OffsetZ

Pobiera lub ustawia wartość czwartego wiersza i trzeciej kolumny tej Matrix3D struktury.

Metody

Append(Matrix3D)

Dołącza określoną macierz do bieżącej macierzy.

Equals(Matrix3D)

Testuje równość między dwiema macierzami.

Equals(Matrix3D, Matrix3D)

Testuje równość między dwiema macierzami.

Equals(Object)

Testuje równość między dwiema macierzami.

GetHashCode()

Zwraca kod skrótu dla tej macierzy.

Invert()

Odwraca tę Matrix3D strukturę.

Multiply(Matrix3D, Matrix3D)

Mnoży określone macierze.

Parse(String)

Konwertuje reprezentację Matrix3D ciągu struktury na równoważną strukturę Matrix3D.

Prepend(Matrix3D)

Poprzedza określoną macierz do bieżącej macierzy.

Rotate(Quaternion)

Dołącza przekształcenie obrotu do bieżącego Matrix3Delementu .

RotateAt(Quaternion, Point3D)

Obraca to Matrix3D o określonym Point3Dobiekcie .

RotateAtPrepend(Quaternion, Point3D)

Poprzedza rotację o określonym środku Point3D do tej Matrix3D struktury.

RotatePrepend(Quaternion)

Poprzedza rotację określoną przez element Quaternion do tej Matrix3D struktury.

Scale(Vector3D)

Dołącza określoną skalę Vector3D do tej Matrix3D struktury.

ScaleAt(Vector3D, Point3D)

Skaluje tę Matrix3D strukturę według określonej Vector3D wartości Point3D.

ScaleAtPrepend(Vector3D, Point3D)

Poprzedza określoną transformację skalowania o określonej Point3DMatrix3D strukturze.

ScalePrepend(Vector3D)

Poprzedza określoną skalę Vector3D do bieżącej Matrix3D struktury.

SetIdentity()

Zmienia tę Matrix3D strukturę w macierz tożsamości.

ToString()

Tworzy reprezentację ciągu tej Matrix3D struktury.

ToString(IFormatProvider)

Tworzy reprezentację ciągu tej Matrix3D struktury.

Transform(Point3D)

Przekształca określony Point3D przez element Matrix3D i zwraca wynik.

Transform(Point3D[])

Przekształca określone Point3D obiekty w tablicy według .Matrix3D

Transform(Point4D)

Przekształca określony Point4D przez element Matrix3D i zwraca wynik.

Transform(Point4D[])

Przekształca określone Point4D obiekty w tablicy według Matrix3D i zwraca wynik.

Transform(Vector3D)

Przekształca obiekt określony Vector3D przez ten Matrix3Delement .

Transform(Vector3D[])

Przekształca określone Vector3D obiekty w tablicy przez ten Matrix3Delement .

Translate(Vector3D)

Dołącza tłumaczenie określonego przesunięcia do bieżącej Matrix3D struktury.

TranslatePrepend(Vector3D)

Poprzedza tłumaczenie określonego przesunięcia na tę Matrix3D strukturę.

Operatory

Equality(Matrix3D, Matrix3D)

Porównuje dwa Matrix3D wystąpienia pod kątem dokładnej równości.

Inequality(Matrix3D, Matrix3D)

Porównuje dwa Matrix3D wystąpienia pod kątem dokładnej nierówności.

Multiply(Matrix3D, Matrix3D)

Mnoży określone macierze.

Jawne implementacje interfejsu

IFormattable.ToString(String, IFormatProvider)

Formatuje wartość bieżącego wystąpienia przy użyciu określonego formatu.

Dotyczy

Zobacz też