次の方法で共有


glPixelMapuiv 関数

glPixelMapuiv 関数は、ピクセル転送マップを設定します。

構文

void WINAPI glPixelMapuiv(
         GLenum  map,
         GLsizei mapsize,
   const GLuint  *values
);

パラメーター

map

シンボリック マップ名。 10 個のマップは次のとおりです。

説明
GL_PIXEL_MAP_I_TO_I
カラー インデックスをカラー インデックスにマップします。
GL_PIXEL_MAP_S_TO_S
ステンシル インデックスをステンシル インデックスにマップします。
GL_PIXEL_MAP_I_TO_R
色のインデックスを赤のコンポーネントにマップします。
GL_PIXEL_MAP_I_TO_G
カラー インデックスを緑色のコンポーネントにマップします。
GL_PIXEL_MAP_I_TO_B
カラー インデックスを青のコンポーネントにマップします。
GL_PIXEL_MAP_I_TO_A
カラー インデックスをアルファ コンポーネントにマップします。
GL_PIXEL_MAP_R_TO_R
赤のコンポーネントを赤のコンポーネントにマップします。
GL_PIXEL_MAP_G_TO_G
緑のコンポーネントを緑のコンポーネントにマップします。
GL_PIXEL_MAP_B_TO_B
青いコンポーネントを青のコンポーネントにマップします。
GL_PIXEL_MAP_A_TO_A
アルファ コンポーネントをアルファ コンポーネントにマップします。

mapsize

定義されているマップのサイズ。

mapsize 値の配列。

戻り値

この関数は値を返しません。

エラー コード

glGetError 関数では、次のエラー コードを取得できます。

名前 意味
GL_INVALID_ENUM
map は受け入れられた値ではありません。
GL_INVALID_VALUE
mapsize が負であるか、GL_PIXEL_MAP_TABLEより大きかった。
GL_INVALID_VALUE
map はGL_PIXEL_MAP_I_TO_I、GL_PIXEL_MAP_S_TO_S、GL_PIXEL_MAP_I_TO_R、GL_PIXEL_MAP_I_TO_G、GL_PIXEL_MAP_I_TO_B、またはGL_PIXEL_MAP_I_TO_Aであり、 mapsize は 2 の累乗ではありません。
GL_INVALID_OPERATION
glBegin の呼び出しと glEnd の対応する呼び出しの間に関数が呼び出されました。

解説

glPixelMap 関数は、glCopyPixelsglCopyTexImage1D、glCopyTexImage2DglCopyTexSubImage1DglCopyTexSubImage2DglDrawPixels、glReadPixelsglTexImage1D、glTexImage2DglTexSubImage1D、および glTexSubImage2D で使用される翻訳テーブルまたはマップを設定します。 これらのマップの使用方法については 、glPixelTransfer のトピックと、ピクセルとテクスチャイメージコマンドのトピックで完全に説明されています。 このトピックでは、マップの仕様のみを説明します。

map パラメーターは、設定する 10 個のマップのいずれかを示すシンボリック マップ名です。 mapsize パラメーターはマップ内のエントリの数を指定し、値は mapsize マップの配列へのポインターです。

マップ内のエントリは、単精度浮動小数点数、符号なし短整数、または符号なし長整数として指定できます。 色コンポーネントの値 (GL_PIXEL_MAP_I_TO_IとGL_PIXEL_MAP_S_TO_Sを含む) を格納するマップでは、値は浮動小数点形式で保持され、仮数と指数のサイズは指定されていません。 glPixelMapfv で指定された浮動小数点値は、これらのマップの内部浮動小数点形式に直接変換され、範囲 [0,1] にクランプされます。 glPixelMapusvglPixelMapuiv で指定された符号なし整数値は、最大の表現可能な整数が 1.0 に、ゼロが 0.0 にマップされるように線形的に変換されます。

インデックス、GL_PIXEL_MAP_I_TO_I、GL_PIXEL_MAP_S_TO_Sを格納するマップでは、バイナリ ポイントの右側にビット数が指定されていない固定小数点形式で値が保持されます。 glPixelMapfv で指定された浮動小数点値は、これらのマップの内部固定小数点形式に直接変換されます。 glPixelMapusvglPixelMapuiv で指定された符号なし整数値は整数値を指定し、バイナリ ポイントの右側にはゼロがすべて指定されます。

次の表は、各マップの初期サイズと値を示しています。 色インデックスまたはステンシル インデックスによってインデックスが作成されるマップは、一部の n対して mapsize = 2 ^ n である必要があります。または結果が未定義です。 各マップの最大許容サイズは実装によって異なり、引数GL_MAX_PIXEL_MAP_TABLEを指定して glGet を 呼び出すことによって決定できます。 1 つの最大値はすべてのマップに適用され、少なくとも 32 です。

マップ 参照インデックス ルックアップ値 [初期サイズ] 初期値
GL_PIXEL_MAP_I_TO_I color index color index 1 0.0
GL_PIXEL_MAP_S_TO_S ステンシル インデックス ステンシル インデックス 1 0.0
GL_PIXEL_MAP_I_TO_R color index R 1 0.0
GL_PIXEL_MAP_I_TO_G color index G 1 0.0
GL_PIXEL_MAP_I_TO_B color index B 1 0.0
GL_PIXEL_MAP_I_TO_A color index A 1 0.0
GL_PIXEL_MAP_R_TO_R R R 1 0.0
GL_PIXEL_MAP_G_TO_G G G 1 0.0
GL_PIXEL_MAP_B_TO_B B B 1 0.0
GL_PIXEL_MAP_A_TO_A A A 1 0.0

次の関数は 、glPixelMap に関連する情報を取得します。

引数GL_PIXEL_MAP_I_TO_I_SIZEを含む glGet

引数GL_PIXEL_MAP_S_TO_S_SIZEを含む glGet

引数GL_PIXEL_MAP_I_TO_R_SIZEを含む glGet

引数GL_PIXEL_MAP_I_TO_G_SIZEを含む glGet

引数GL_PIXEL_MAP_I_TO_B_SIZEを含む glGet

引数GL_PIXEL_MAP_I_TO_A_SIZEを含む glGet

引数GL_PIXEL_MAP_R_TO_R_SIZEを含む glGet

引数GL_PIXEL_MAP_G_TO_G_SIZEを含む glGet

引数GL_PIXEL_MAP_B_TO_B_SIZEを含む glGet

引数GL_PIXEL_MAP_A_TO_A_SIZEを含む glGet

引数GL_MAX_PIXEL_MAP_TABLEを含む glGet

必要条件

要件
サポートされている最小のクライアント
Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows 2000 Server [デスクトップ アプリのみ]
ヘッダー
Gl.h
ライブラリ
Opengl32.lib
[DLL]
Opengl32.dll

関連項目

glBegin

glCopyPixels

glDrawPixels

glEnd

glPixelStore

glPixelTransfer

glReadPixels

glTexImage1D

glTexImage2D