Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Vecteur à quatre dimensions, utilisé pour représenter une rotation.
Un quaternion peut faire pivoter efficacement un objet à propos du vecteur (x, y, z) par l’angle theta, où w = cos(theta/2). Les quaternions sont généralement utilisés pour l’interpolation lisse entre deux angles et pour éviter le problème de verrou de gimbal qui peut se produire avec des angles Euler.
Ce type est disponible uniquement en C++. Son équivalent .NET est System.Numerics.Quaternion.
Constructeurs
Nom | Descriptif |
---|---|
quaternion() |
Crée un quaternion non initialisé. |
quaternion(float x, float y, float z, float w) |
Crée un quaternion avec les valeurs spécifiées. |
quaternion(float3 vectorPart, float scalarPart) |
Crée un quaternion à partir d’un float3 et scalaire. |
quaternion(Microsoft::?Graphics::?Canvas::?Numerics::?Quaternion const& value) |
Convertit un Quaternion Microsoft.Graphics.Canvas.Numerics.Quaternion . |
Fonctions
Nom | Descriptif |
---|---|
quaternion make_quaternion_from_axis_angle(float3 const& axis, float angle) |
Crée un quaternion à partir d’un vecteur et d’un angle pour faire pivoter le vecteur. |
quaternion make_quaternion_from_yaw_pitch_roll(float yaw, float pitch, float roll) |
Crée un quaternion à partir d’angles de lacet, de tangage et de rouleau spécifiés. |
quaternion make_quaternion_from_rotation_matrix(float4x4 const& matrix) |
Crée un quaternion à partir d’une matrice de rotation. |
bool is_identity(quaternion const& value) |
Vérifie s’il s’agit d’un quaternion d’identité (aucune rotation). |
float length(quaternion const& value) |
Calcule la longueur d’un quaternion. |
float length_squared(quaternion const& value) |
Calcule la longueur carrée d’un quaternion. |
float dot(quaternion const& quaternion1, quaternion const& quaternion2) |
Calcule le produit par points de deux quaternions. |
quaternion normalize(quaternion const& value) |
Divise chaque composant d’un quaternion par la longueur du quaternion. |
quaternion conjugate(quaternion const& value) |
Calcule la conjugaison d’un quaternion. |
quaternion inverse(quaternion const& value) |
Calcule l’inverse d’un quaternion. |
quaternion slerp(quaternion const& quaternion1, quaternion const& quaternion2, float amount) |
Interpole entre deux quaternions, à l’aide d’une interpolation linéaire sphérique. |
quaternion lerp(quaternion const& quaternion1, quaternion const& quaternion2, float amount) |
Interpole linéairement entre deux quaternions. |
quaternion concatenate(quaternion const& value1, quaternion const& value2) |
Concatène deux quaternions ; le résultat représente la première rotation suivie de la deuxième rotation. |
Méthodes
Nom | Descriptif |
---|---|
static quaternion identity() |
Retourne une instance du quaternion d’identité. |
Opérateurs
Nom | Descriptif |
---|---|
quaternion operator+ (quaternion const& value1, quaternion const& value2) |
Ajoute deux quaternions. |
quaternion operator- (quaternion const& value1, quaternion const& value2) |
Soustrait un quaternion d’un autre quaternion. |
quaternion operator* (quaternion const& value1, quaternion const& value2) |
Multiplie un quaternion par un autre quaternion. |
quaternion operator* (quaternion const& value1, float value2) |
Multiplie un quaternion par une valeur scalaire. |
quaternion operator/ (quaternion const& value1, quaternion const& value2) |
Divise un quaternion par un autre quaternion. |
quaternion operator- (quaternion const& value) |
Retourne le signe de chaque composant du quaternion. |
quaternion& operator+= (quaternion& value1, quaternion const& value2) |
Sur place, deux quaternions sont ajoutés. |
quaternion& operator-= (quaternion& value1, quaternion const& value2) |
En place soustrait un quaternion d’un autre quaternion. |
quaternion& operator*= (quaternion& value1, quaternion const& value2) |
Sur place multiplie un quaternion par un autre quaternion. |
quaternion& operator*= (quaternion& value1, float value2) |
Sur place, multiplie un quaternion par une valeur scalaire. |
quaternion& operator/= (quaternion& value1, quaternion const& value2) |
Sur place divise un quaternion par un autre quaternion. |
bool operator== (quaternion const& value1, quaternion const& value2) |
Détermine si deux instances de quaternion sont égales. |
bool operator!= (quaternion const& value1, quaternion const& value2) |
Détermine si deux instances de quaternion ne sont pas égales. |
operator Microsoft::?Graphics::?Canvas::?Numerics::?Quaternion() const |
Convertit un quaternion en Microsoft.Graphics.Canvas.Numerics.Quaternion. |
Domaines
Nom | Descriptif |
---|---|
float x |
Valeur X du composant vectoriel du quaternion. |
float y |
Valeur Y du composant vectoriel du quaternion. |
float z |
Valeur Z du composant vectoriel du quaternion. |
float w |
Composant de rotation du quaternion. |
Spécifications
Besoin | Valeur |
---|---|
Namespace | Windows ::Foundation ::Numerics |
En-tête de page |
|