次の方法で共有


D3DXColorAdjustSaturation

カラーの彩度値を調節します。

D3DXCOLOR * 
D3DXColorAdjustSaturation(
  D3DXCOLOR * pOut,
  CONST D3DXCOLOR * pC,
  FLOAT s
);

パラメータ

  • pOut
    演算結果を表す D3DXCOLOR 構造体へのポインターです。
  • pC
    演算対象の D3DXCOLOR 構造体へのポインターです。
  • s
    彩度値です。このパラメーターは、グレースケールに変換されたカラーと、元のカラーの pC との間を線形的に補間します。s の値に制限はありません。s が 0 の場合、グレースケール カラーが返されます。s が 1 の場合、元のカラーが返されます。

戻り値

彩度調整の結果を示す D3DXCOLOR 構造体へのポインターを返します。

解説 

入力アルファ チャンネルは修正なしで出力アルファ チャンネルにコピーされます。

この関数の戻り値は pOut パラメーターに返される値と 同じです。このため、この関数は他の関数のパラメーターとして使用できます。

次に示す例のように、この関数は非飽和カラーと特定のカラーとの間で、D3DXCOLOR 構造体の赤 (red)、緑 (green)、青 (blue) のカラー成分を補間します。

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

s が 0 より大きく 1 より小さい場合、彩度が減少します。s が 1 より大きい場合、彩度が増加します。

グレースケール カラーの計算式は次のとおりです。

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

要件

ヘッダー: D3dx9math.h 宣言

ライブラリ: D3dx9.lib 内容

関連項目

D3DXColorAdjustContrast