GLPIXELMAP

Section: Misc. Reference Manual Pages (3G)
索引 xjman
 

名前

glPixelMapfv, glPixelMapuiv, glPixelMapusv - ピクセル転送時のマッピングを設定する

 

書式

void glPixelMapfv( GLenum map,

                     GLint mapsize,
                     const GLfloat *values )
void glPixelMapuiv( GLenum map,

                      GLint mapsize,
                      const GLuint *values )
void glPixelMapusv( GLenum map,

                      GLint mapsize,
                      const GLushort *values )

delim $$  

引き数

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, 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
定義するマップの大きさを指定する。
values
mapsize の値の配列を指定する。
 

説明

glPixelMap は変換テーブル(すなわち maps)を設定する。 この変換テーブルは次の関数に使われる: glCopyPixels, glCopyTexImage1D, glCopyTexImage2D, glCopyTexSubImage1D, glCopyTexSubImage2D, glCopyTexSubImage3D, glDrawPixels, glReadPixels, glTexImage1D, glTexImage2D, glTexImage3D, glTexSubImage1D, glTexSubImage2D, glTexSubImage3D。 これに加え、実装が GL_ARB_imaging の一部に 対応している場合には、この関数は glColorTable, glColorSubTable, glConvolutionFilter1D, glConvolutionFilter2D, glHistogram, glMinmax, glSeparableFilter2D にも使われる。 これらのマップの使いかたは、 glPixelTransfer のマニュアルページで詳しく説明されている。 ピクセル転送およびテクスチャイメージ転送コマンドの マニュアルページでも部分的に説明されている。 マップの仕様が説明されるのは、このマニュアルページだけである。 map はマップのシンボル名であり、設定するマップを 10個の中からひとつ指定する。 mapsize はマップが持つ項目の数を指定し、 values はマップ値の配列(大きさが mapsize)を指す ポインタである。 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
アルファ値要素をアルファ値要素にマップする。 マップが持つ項目は、 単精度の浮動小数点値、 符号なしの short integer, 符号なしの long integer で指定できる。 色要素値を格納しているマップ( GL_PIXEL_MAP_I_TO_IGL_PIXEL_MAP_S_TO_S を 除く全て)は、値を浮動小数点値で持っている。 仮数部と指数部の大きさは未定義である。 glPixelMapfv で指定した浮動小数点値は、 これらのマップの内部表現の浮動小数点形式に直接変換され、 それから [0, 1] の範囲になるように調整される。 glPixelMapusv, glPixelMapuiv で指定された 符号なし整数値は浮動小数点値に変換される。 この変換は、表現可能な最大の整数が 1.0 にマップされ、 0 が 0.0 にマップされる線形な変換である。 インデックスを格納するマップ (GL_PIXEL_MAP_I_TO_I, GL_PIXEL_MAP_S_TO_S) は値を固定小数点値で持つ。 二進小数点から右のビット数は未定義である。 glPixelMapfv で指定された浮動小数点値は、 これらのマップの内部形式の固定小数点値に直接変換される。 glPixelMapusv, glPixelMapuiv で指定された 符号なし整数値は、二進小数点から右を全て 0 とすることで 整数値を示す。 次に示す表は、それぞれのマップについて、大きさと値の初期を示す。 色またはステンシルをインデックス表現しているマップは、 何らかの $n$ について mapsize = $2 sup n$ でなければ ならない。そうでない場合はエラーとなる。 それぞれのマップに許される最大の大きさは実装依存である。 この大きさは、引き数 GL_MAX_PIXEL_MAP_TABLE を指定して glGet を呼ぶことで調べられる。 最大値はひとつ調べれば、その値が全てに当てはまる。 この値は少なくとも32である。

map参照インデックス参照値初期サイズ初期値

GL_PIXEL_MAP_I_TO_I色インデックス色インデックス10
GL_PIXEL_MAP_S_TO_Sステンシルインデックスステンシルインデックス10
GL_PIXEL_MAP_I_TO_R色インデックスR10
GL_PIXEL_MAP_I_TO_G色インデックスG10
GL_PIXEL_MAP_I_TO_B色インデックスB10
GL_PIXEL_MAP_I_TO_A色インデックスA10
GL_PIXEL_MAP_R_TO_RRR10
GL_PIXEL_MAP_G_TO_GGG10
GL_PIXEL_MAP_B_TO_BBB10
GL_PIXEL_MAP_A_TO_AAA10

 

エラー

GL_INVALID_ENUM: map の値が不正な場合に起こる。 GL_INVALID_VALUE: mapsize が 0 以下か、GL_MAX_PIXEL_MAP_TABLE より 大きい場合に起こる。 GL_INVALID_VALUE: mapGL_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 が実行されると起こる。  

関連する取得値

glGetPixelMap
引き数 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  

関連項目

glColorTable(3G), glColorSubTable(3G), glConvolutionFilter1D(3G), glConvolutionFilter2D(3G), glCopyPixels(3G), glCopyTexImage1D(3G), glCopyTexImage2D(3G), glCopyTexSubImage1D(3G), glCopyTexSubImage2D(3G), glDrawPixels(3G), glHistogram(3G), glMinmax(3G), glPixelStore(3G), glPixelTransfer(3G), glReadPixels(3G), glSeparableFilter2D(3G), glTexImage1D(3G), glTexImage2D(3G), glTexImage3D(3G), glTexSubImage1D(3G), glTexSubImage2D(3G), glTexSubImage3D(3G)


 

Index

名前
書式
引き数
説明
エラー
関連する取得値
関連項目

jman



Time: 07:01:09 GMT, January 12, 2009