Funzione D3DXColorAdjustSaturation (D3DX10Math.h)
Nota
La libreria di utilità D3DX10 è deprecata. È consigliabile usare invece DirectXMath .
Regola il valore di saturazione di un colore.
Sintassi
D3DXCOLOR* D3DXColorAdjustSaturation(
_In_ D3DXCOLOR *pOut,
_In_ const D3DXCOLOR *pC,
_In_ FLOAT s
);
Parametri
-
pOut [in]
-
Tipo: D3DXCOLOR*
Puntatore a D3DXCOLOR che è il risultato dell'operazione.
-
pC [in]
-
Tipo: const D3DXCOLOR*
Puntatore a una struttura D3DXCOLOR di origine.
-
s [in]
-
Tipo: FLOAT
Valore di saturazione. Questo parametro esegue l'interpolazione lineare tra il colore convertito in scala di grigi e il colore originale, pC. Non esistono limiti al valore di s. Se s è 0, il colore restituito è il colore in scala di grigi. Se s è 1, il colore restituito è il colore originale.
Valore restituito
Tipo: D3DXCOLOR*
Questa funzione restituisce un puntatore a una struttura D3DXCOLOR risultante dalla regolazione della saturazione.
Commenti
Il canale alfa di input viene copiato, non modificato, nel canale alfa di output.
Il valore restituito per questa funzione è lo stesso valore restituito nel parametro pOut. In questo modo, questa funzione può essere usata come parametro per un'altra funzione.
Questa funzione interpola i componenti di colore rosso, verde e blu di una struttura D3DXCOLOR tra un colore non saturo e un colore, come illustrato nell'esempio seguente.
//Approximate values for each component's contribution to luminance.
//Based upon the NTSC standard described in ITU-R Recommendation BT.709.
FLOAT grey = pC->r * 0.2125f + pC->g * 0.7154f + pC->b * 0.0721f;
pOut->r = grey + s * (pC->r - grey);
Se s è maggiore di 0 e minore di 1, la saturazione viene ridotta. Se s è maggiore di 1, la saturazione viene aumentata.
Il colore della scala di grigi viene calcolato come segue:
r = g = b = 0.2125*r + 0.7154*g + 0.0721*b;
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche