Matrix3D Struktura
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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
- 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 | |
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) | |
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) | |
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ż
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla