D3DXColorAdjustSaturation, fonction (D3DX10Math.h)

Notes

La bibliothèque utilitaire D3DX10 est déconseillée. Nous vous recommandons d’utiliser DirectXMath à la place.

Ajuste la valeur de saturation d’une couleur.

Syntaxe

D3DXCOLOR* D3DXColorAdjustSaturation(
  _In_       D3DXCOLOR *pOut,
  _In_ const D3DXCOLOR *pC,
  _In_       FLOAT     s
);

Paramètres

pOut [in]

Type : D3DXCOLOR*

Pointeur vers un D3DXCOLOR qui est le résultat de l’opération.

pC [in]

Type : const D3DXCOLOR*

Pointeur vers une structure D3DXCOLOR source.

s [in]

Type : FLOAT

Valeur de saturation. Ce paramètre interpole linéairement entre la couleur convertie en nuances de gris et la couleur d’origine, pC. Il n’existe aucune limite sur la valeur de s. Si s a la valeur 0, la couleur retournée est la couleur des nuances de gris. Si s a la valeur 1, la couleur retournée est la couleur d’origine.

Valeur retournée

Type : D3DXCOLOR*

Cette fonction retourne un pointeur vers une structure D3DXCOLOR qui est le résultat de l’ajustement de saturation.

Notes

Le canal alpha d’entrée est copié, sans modification, dans le canal alpha de sortie.

La valeur de retour pour cette fonction est la même valeur retournée dans le paramètre pOut. De cette façon, cette fonction peut être utilisée comme paramètre pour une autre fonction.

Cette fonction interpole les composants de couleur rouge, vert et bleu d’une structure D3DXCOLOR entre une couleur non saturée et une couleur, comme illustré dans l’exemple suivant.

//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);

Si s est supérieur à 0 et inférieur à 1, la saturation est réduite. Si s est supérieur à 1, la saturation est augmentée.

La couleur des nuances de gris est calculée comme suit :

r = g = b = 0.2125*r + 0.7154*g + 0.0721*b;

Spécifications

Condition requise Valeur
En-tête
D3DX10Math.h
Bibliothèque
D3DX10.lib

Voir aussi

Fonctions mathématiques