Funzione XMCOLOR::XMCOLOR(float,float,float,float) (directxpackedvector.h)

Inizializza una nuova istanza di XMCOLOR da quattro float argomenti.

Questo costruttore inizializza una nuova istanza di XMCOLOR da quattro float argomenti.

Nota Questo costruttore è disponibile solo in C++.
 

Sintassi

void XMCOLOR(
  float _r,
  float _g,
  float _b,
  float _a
) noexcept;

Parametri

_r

Valore normalizzato per il canale rosso di un colore ARGB a 32 bit archiviato nella nuova istanza di XMCOLOR. Il valore di questo argomento deve essere compreso nell'intervallo [0,0 - 1,0].

_g

Valore normalizzato per il canale verde di un colore ARGB a 32 bit archiviato nella nuova istanza di XMCOLOR. Il valore di questo argomento deve essere compreso nell'intervallo [0,0 - 1,0].

_b

Valore normalizzato per il canale blu di un colore ARGB a 32 bit archiviato nella nuova istanza di XMCOLOR. Il valore di questo argomento deve essere compreso nell'intervallo [0,0 - 1,0].

_a

Valore normalizzato per il canale alfa di un colore ARGB a 32 bit archiviato nella nuova istanza di XMCOLOR. Il valore di questo argomento deve essere compreso nell'intervallo [0,0 - 1,0].

Valore restituito

nessuno

Osservazioni

Durante la creazione di un'istanza di , tutti gli argomenti di XMCOLORinput per questo costruttore vengono bloccati a un intervallo di [0,0, 1,0], moltiplicato per 255.0fe arrotondato e prima di essere archiviato nel membro della struttura appropriato.

Lo pseudocodice seguente illustra l'operazione di questo costruttore, che sfrutta i union quattro componenti del XMCOLOR vettore con un'istanza di uint32_t nella definizione della struttura:


        XMCOLOR instance;        
	_a1 = min( max( _a, 0.0 ), 1.0 );
	_r1 = min( max( _r, 0.0 ), 1.0 );
	_g1 = min( max( _g, 0.0 ), 1.0 );
	_b1 = min( max( _b, 0.0 ), 1.0 );

	_a1 = round ( _a1 * 255.0f );
	_r1 = round ( _r1 * 255.0f );
	_g1 = round ( _g1 * 255.0f );
	_b1 = round ( _b1 * 255.0f );

	instance.v =  ( (uint32_t)_a1  << 24) |
                      ( (uint32_t)_r1  << 16) |
                      ( (uint32_t)_g1  <<  8) |
                      ( (uint32_t)_b1 );
    

Requisiti

   
Piattaforma di destinazione Windows
Intestazione directxpackedvector.h

Vedi anche

Riferimento

XMCOLOR

Costruttori XMCOLOR