funzione XMDECN4::XMDECN4(constfloat*) (directxpackedvector.h)

Inizializza una nuova istanza di XMDECN4 da un argomento della matrice di quattro elementi float .

Questo costruttore inizializza una nuova istanza di XMDECN4 da un argomento della matrice di quattro elementi float .

Nota Questo costruttore è disponibile solo in C++.

Sintassi

void XMDECN4(
  const float *pArray
) noexcept;

Parametri

pArray

Matrice a virgola mobile di quattro elementi contenente i valori usati per inizializzare i quattro componenti di una nuova istanza di XMDECN4.

Valore restituito

nessuno

Osservazioni

Gli elementi della matrice vengono mappati ai componenti vettoriali di una nuova istanza di XMDECN4 come indicato di seguito:

Componente vettore Elemento Array Intervallo Descrizione
x pArray[0] -1.0, 1.0 Durante l'istanza, pArray[0] viene bloccato tra -1 e 1, moltiplicato per 511.0f e assegnato a x.
y pArray[1] -1.0, 1.0 Durante l'istanza, pArray[1] viene bloccato tra -1 e 1, moltiplicato per 511.0f e quindi assegnato a y.
z pArray[2] -1.0, 1.0 Durante l'istanza, pArray[2] viene bloccato tra -1 e 1, moltiplicato per 511.0f e quindi assegnato a z.
w pArray[3] -1.0, 1.0 Durante l'istanza, pArray[3] è bloccato tra -1 e 1 e quindi assegnato a w.
XMDECN4 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], -1.0 ), 1.0 );
_x1 = round( _x1 *  511.0f);
_y1 = round( _y1 *  511.0f);
_z1 = round( _z1 *  511.0f);

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

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione directxpackedvector.h

Vedi anche

XMDECN4

costruttori XMDECN4