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, comme la quatrième colonne est également accessible, la matrice permet aux développeurs de représenter les 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
Valeur de la première ligne et de la première colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M11.
Valeur de la première ligne et de la deuxième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M12.
Valeur de la première ligne et de la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M13.
Valeur de la première ligne et de la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M14.
Valeur de la deuxième ligne et de la première colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M21.
Valeur de la deuxième ligne et de la deuxième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M22.
Valeur de la deuxième ligne et de la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M23.
Valeur de la deuxième ligne et de la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M24.
Valeur de la troisième ligne et de la première colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M31.
Valeur de la troisième ligne et de la deuxième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M32.
Valeur de la troisième ligne et de la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M34.
Valeur dans la troisième ligne et la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M33.
Valeur dans la quatrième ligne et la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M44.
offsetXSystem.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.
offsetYSystem.Double
Valeur dans la quatrième ligne et la deuxième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété OffsetY.
offsetZSystem.Double
Valeur dans la quatrième ligne et 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é. |