Matrix3D Structure
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente une matrice 4 x 4 utilisée pour les transformations dans un espace 3D.
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
- Héritage
- Attributs
- Implémente
Exemples
// 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)
Remarques
Matrix3D a la syntaxe de vecteur de ligne suivante :
M11 | M12 | M13 | M14 |
M21 | M22 | M23 | M24 |
M31 | M32 | M33 | M34 |
OffsetX | OffsetY | OffsetZ | M44 |
Notez que, étant donné que la quatrième colonne est également accessible, la matrice permet aux développeurs de représenter des transformations affine et non affine.
Les matrices peuvent être ajoutées ou ajoutées à d’autres matrices. L’ajout de la matrice A à la matrice B indique une transformation par B, puis par A :
Utilisation d'attributs XAML
<object property="m11, m12, m13, m21, m22, m23, m31, m32, m33, offsetX, offsetY, offsetZ"/>
- or -
<object property="Identity"/>
Valeurs XAML
M11
System.Double
Valeur dans la première ligne et la première colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M11.
M12
System.Double
Valeur de la première ligne et de la deuxième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M12.
M13
System.Double
Valeur dans la première ligne et la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M13.
M14
System.Double
Valeur de la première ligne et de la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M14.
M21
System.Double
Valeur de la deuxième ligne et de la première colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M21.
M22
System.Double
Valeur dans la deuxième ligne et la deuxième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M22.
M23
System.Double
Valeur dans la deuxième ligne et la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M23.
M24
System.Double
Valeur dans la deuxième ligne et la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M24.
M31
System.Double
Valeur dans la troisième ligne et la première colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M31.
M32
System.Double
Valeur de la troisième ligne et de la deuxième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M32.
M33
System.Double
Valeur dans la troisième ligne et la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M34.
M34
System.Double
Valeur de la troisième ligne et de la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M33.
M44
System.Double
Valeur de la quatrième ligne et de la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M44.
offsetX
System.Double
Valeur de la quatrième ligne et de la première colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété OffsetX.
offsetY
System.Double
Valeur de la quatrième ligne et de la deuxième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété OffsetY.
offsetZ
System.Double
Valeur de la quatrième ligne et de la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété OffsetZ.
Constructeurs
Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double) |
Constructeur qui définit les valeurs initiales de la matrice. |
Propriétés
Determinant |
Récupère le déterminant de cette structure Matrix3D. |
HasInverse |
Obtient une valeur qui indique si Matrix3D est réversible. |
Identity | |
IsAffine |
Obtient une valeur qui indique si cette structure Matrix3D est affine. |
IsIdentity |
Détermine si cette structure Matrix3D est une identité Matrix3D. |
M11 |
Obtient ou définit la valeur de la première ligne et de la première colonne de cette structure Matrix3D. |
M12 |
Obtient ou définit la valeur de la première ligne et de la deuxième colonne de cette structure Matrix3D. |
M13 |
Obtient ou définit la valeur de la première ligne et de la troisième colonne pour cette structure Matrix3D. |
M14 |
Obtient ou définit la valeur de la première ligne et de la quatrième colonne pour cette structure Matrix3D. |
M21 |
Obtient ou définit la valeur de la deuxième ligne et de la première colonne pour cette structure Matrix3D. |
M22 |
Obtient ou définit la valeur de la deuxième ligne et de la deuxième colonne de cette structure Matrix3D. |
M23 |
Obtient ou définit la valeur de la deuxième ligne et de la troisième colonne pour cette structure Matrix3D. |
M24 |
Obtient ou définit la valeur de la deuxième ligne et de la quatrième colonne pour cette structure Matrix3D. |
M31 |
Obtient ou définit la valeur de la troisième ligne et de la première colonne de cette structure Matrix3D. |
M32 |
Obtient ou définit la valeur de la troisième ligne et de la deuxième colonne de cette structure Matrix3D. |
M33 |
Obtient ou définit la valeur de la troisième ligne et de la troisième colonne pour cette structure Matrix3D. |
M34 |
Obtient ou définit la valeur de la troisième ligne et de la quatrième colonne pour cette structure Matrix3D. |
M44 |
Obtient ou définit la valeur de la quatrième ligne et de la quatrième colonne pour cette structure Matrix3D. |
OffsetX |
Obtient ou définit la valeur de la quatrième ligne et de la première colonne pour cette structure Matrix3D. |
OffsetY |
Obtient ou définit la valeur de la quatrième ligne et de la deuxième colonne pour cette structure Matrix3D. |
OffsetZ |
Obtient ou définit la valeur de la quatrième ligne et de la troisième colonne pour cette structure Matrix3D. |
Méthodes
Append(Matrix3D) |
Ajoute une matrice spécifiée à la matrice actuelle. |
Equals(Matrix3D) |
Teste l'égalité entre deux matrices. |
Equals(Matrix3D, Matrix3D) |
Teste l'égalité entre deux matrices. |
Equals(Object) |
Teste l'égalité entre deux matrices. |
GetHashCode() |
Retourne le code de hachage pour cette matrice. |
Invert() |
Inverse cette structure Matrix3D. |
Multiply(Matrix3D, Matrix3D) |
Multiplie les matrices spécifiées. |
Parse(String) |
Convertit une représentation sous forme de chaîne d'une structure Matrix3D en une structure Matrix3D équivalente. |
Prepend(Matrix3D) |
Ajoute initialement une matrice spécifiée à la matrice actuelle. |
Rotate(Quaternion) |
Ajoute une transformation de rotation au Matrix3D actuel. |
RotateAt(Quaternion, Point3D) | |
RotateAtPrepend(Quaternion, Point3D) |
Ajoute initialement une rotation sur un Point3D central spécifié à cette structure Matrix3D. |
RotatePrepend(Quaternion) |
Ajoute initialement une rotation spécifiée par un Quaternion à cette structure Matrix3D. |
Scale(Vector3D) |
Ajoute le Vector3D de mise à l'échelle spécifié à cette structure Matrix3D. |
ScaleAt(Vector3D, Point3D) |
Met à l'échelle cette structure Matrix3D avec le Vector3D spécifié sur le Point3D spécifié. |
ScaleAtPrepend(Vector3D, Point3D) |
Ajoute initialement la transformation d'échelle spécifiée sur le Point3D spécifié à cette structure Matrix3D. |
ScalePrepend(Vector3D) |
Ajoute le Vector3D de mise à l’échelle spécifié devant la structure Matrix3D actuelle. |
SetIdentity() |
Change cette structure Matrix3D en une matrice d'identité. |
ToString() |
Crée une représentation sous forme de chaîne de cette structure Matrix3D. |
ToString(IFormatProvider) |
Crée une représentation sous forme de chaîne de cette structure Matrix3D. |
Transform(Point3D) |
Transforme le Point3D spécifié par le Matrix3D et retourne le résultat. |
Transform(Point3D[]) |
Transforme les objets Point3D spécifiés dans le tableau par Matrix3D. |
Transform(Point4D) |
Transforme le Point4D spécifié par le Matrix3D et retourne le résultat. |
Transform(Point4D[]) |
Transforme les objets Point4D spécifiés dans le tableau par Matrix3D et retourne le résultat. |
Transform(Vector3D) | |
Transform(Vector3D[]) |
Transforme les objets Vector3D spécifiés dans le tableau par Matrix3D. |
Translate(Vector3D) |
Ajoute une translation de l'offset spécifié à la structure Matrix3D actuelle. |
TranslatePrepend(Vector3D) |
Ajoute initialement une translation de l'offset spécifié à la structure Matrix3D actuelle. |
Opérateurs
Equality(Matrix3D, Matrix3D) |
Compare l'égalité exacte de deux instances de Matrix3D. |
Inequality(Matrix3D, Matrix3D) |
Compare l'inégalité exacte de deux instances de Matrix3D. |
Multiply(Matrix3D, Matrix3D) |
Multiplie les matrices spécifiées. |
Implémentations d’interfaces explicites
IFormattable.ToString(String, IFormatProvider) |
Met en forme la valeur de l’instance actuelle en utilisant le format spécifié. |
S’applique à
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour