次の方法で共有


D3DXColorAdjustSaturation 関数

D3DXColorAdjustSaturation 関数

色の彩度値を調整する。

構文

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

パラメータ

  • pOut
    [in, out] 演算結果である D3DXCOLOR 構造体へのポインタ。
  • pC
    [in] 処理の基になる D3DXCOLOR 構造体へのポインタ。
  • s
    [in] 飽和値。このパラメータは、グレー スケールに変換された色と元の色 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
最低限のオペレーティング システム Windows 98

参照

D3DXColorAdjustContrast