Partager via


Matrix3D Structure

Définition

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
Matrix3D
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

M11System.Double

Valeur de la première ligne et de la première colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M11.

M12System.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.

M13System.Double

Valeur de la première ligne et de la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M13.

M14System.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.

M21System.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.

M22System.Double

Valeur de la deuxième ligne et de la deuxième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M22.

M23System.Double

Valeur de la deuxième ligne et de la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M23.

M24System.Double

Valeur de la deuxième ligne et de la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M24.

M31System.Double

Valeur de la troisième ligne et de la première colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M31.

M32System.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.

M33System.Double

Valeur de la troisième ligne et de la troisième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M34.

M34System.Double

Valeur dans la troisième ligne et la quatrième colonne de ce Matrix3D. Pour plus d'informations, consultez la propriété M33.

M44System.Double

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

Change une structure Matrix3D en une identité Matrix3D.

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, Matrix3D)

Teste l'égalité entre deux matrices.

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

Fait pivoter Matrix3D sur le Point3D spécifié.

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)

Transforme le Vector3D spécifié par Matrix3D.

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 à