Partager via


fonction XMXDECN4 ::XMXDECN4(constfloat*) (directxpackedvector.h)

Initialise une nouvelle instance de XMXDECN4 à partir d’un argument de tableau à quatre élémentsfloat.

Ce constructeur initialise une nouvelle instance de XMXDECN4 à partir d’un argument de tableau de quatre élémentsfloat.

Note Ce constructeur est disponible uniquement sous C++.

Syntaxe

void XMXDECN4(
  const float *pArray
) noexcept;

Paramètres

pArray

Tableau à virgule flottante à quatre éléments contenant les valeurs utilisées pour initialiser les quatre composants d’un nouveau instance de XMXDECN4.

Valeur de retour

None

Remarques

Les éléments tableaux sont mappés aux composants vectoriels d’une nouvelle instance de XMXDECN4 comme suit :

Composant Vector Élément Array Plage Description
x pArray[0] -0.0, 1.0 Pendant l’instanciation, pArray[0] est serré entre -1 et 1, multiplié par 511.0f et affecté à x.
y pArray[1] -0.0, 1.0 Pendant l’instanciation, pArray[1] est serré entre -1 et 1, multiplié par 511.0f, puis affecté à y.
z pArray[2] -0.0, 1.0 Pendant l’instanciation, pArray[2] est serré entre -1 et 1, multiplié par 511.0f, puis affecté à z.
w pArray[3] 0.0, 1.0 Pendant l’instanciation, pArray[3] est serré entre 0 et 1, puis attribué à w. Cet argument doit être compris entre 0,0 et 1,0 ; lors de l’instanciation d’un instance de XMXDECN4, il est multiplié par 3.0f, puis stocké en tant que membre w de la structure.
XMXDECN4 instance;
_x1=min( max( pArray[0], -1.0 ), 1.0 );
_y1=min( max( pArray[1], -1.0 ), 1.0 );
_z1=min( max( pArray[2], -1.0 ), 1.0 );
_w1=min( max( pArray[3], 0.0 ), 1.0 );
_x1 = round( _x1 *  511.0f);
_y1 = round( _y1 *  511.0f);
_z1 = round( _z1 *  511.0f);
_w1 = round( _w1 *  3.0f);

instance.v =  ( (uint32_t)_w1 << 30) |
                (((uint32_t)_z1 & 0x3FF) << 20) |
                (((uint32_t)_y1 & 0x3FF) << 10) |
                (((uint32_t)_x1 & 0x3FF));

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête directxpackedvector.h

Voir aussi

Référence

XMXDECN4

constructeurs XMXDECN4