GLCOPYCOLORTABLE

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

NAME

glCopyColorTable - ピクセルを色テーブルにコピーする

 

書式

void glCopyColorTable( GLenum target,

                         GLenum internalformat,
                         GLint x,
                         GLint y,
                         GLsizei width )

delim $$  

引き数

target
対象となる色テーブル。 GL_COLOR_TABLE, GL_POST_CONVOLUTION_COLOR_TABLE, GL_POST_COLOR_MATRIX_COLOR_TABLE のいずれかでなければならない。
internalformat
テクスチャイメージの内部保存領域。 次のシンボル定数のいずれかを指定しなければならない: GL_ALPHA, GL_ALPHA4, GL_ALPHA8, GL_ALPHA12, GL_ALPHA16, GL_LUMINANCE, GL_LUMINANCE4, GL_LUMINANCE8, GL_LUMINANCE12, GL_LUMINANCE16, GL_LUMINANCE_ALPHA, GL_LUMINANCE4_ALPHA4, GL_LUMINANCE6_ALPHA2, GL_LUMINANCE8_ALPHA8, GL_LUMINANCE12_ALPHA4, GL_LUMINANCE12_ALPHA12, GL_LUMINANCE16_ALPHA16, GL_INTENSITY, GL_INTENSITY4, GL_INTENSITY8, GL_INTENSITY12, GL_INTENSITY16, GL_R3_G3_B2, GL_RGB, GL_RGB4, GL_RGB5, GL_RGB8, GL_RGB10, GL_RGB12, GL_RGB16, GL_RGBA, GL_RGBA2, GL_RGBA4, GL_RGB5_A1, GL_RGBA8, GL_RGB10_A2, GL_RGBA12, GL_RGBA16.
x
色テーブルに転送する矩形領域のピクセルの左下隅の x 座標。
y
色テーブルに転送する矩形領域のピクセルの左下隅の y 座標。
width
矩形領域ピクセルの幅。
 

説明

glCopyColorTable は現在の GL_READ_BUFFER から 色テーブルにピクセルをロードする(glColorTable のように メインメモリから読み込むのではない)。 画面に整列された矩形領域のピクセルが色テーブルにロードされる。 この領域は左下隅の座標が (xy) であり、幅が width, 高さが 1 である。 この領域に含まれるピクセルのどれかが GL コンテクストに関連付けされたウィンドウの外にある場合、 はみ出しているピクセルについて得られる値は未定義である。 矩形領域に含まれるピクセルは、 internalformat として RGBA を設定した glReadPixels が呼ばれた 場合と同様に処理される。 ただし処理は最後の RGBA への変換の後に終わる点が異なる。 次に、色テーブルに対して定義されている 4 個のスケールパラメータと 4 個のバイアスパラメータを使って、 各ピクセルの R, G, B, A 要素のスケール処理とバイアス処理が行われる。 スケールパラメータとバイアスパラメータは glColorTableParameter を 呼ぶことによって設定する。 次に、R, G, B, A の値は [0,1] に収まるように修正される。 それから、各ピクセルは internalformat で指定された内部フォーマットに 変換される。 この変換は単にピクセルの要素値(R, G, B, A)を内部フォーマットに 含まれる値(赤、緑、青、アルファ値、輝度、強度)にマッピングするだけである。 マッピングは次の通りである:

内部フォーマットアルファ値輝度強度

GL_ALPHAA
GL_LUMINANCER
GL_LUMINANCE_ALPHAAR
GL_INTENSITYR
GL_RGBRGB
GL_RGBARGBA

最後に、結果として得られるピクセルの赤、緑、青、アルファ値、輝度、強度の 各要素が色テーブルに格納される。 これらのピクセルにより 1 次元のテーブルが作る。 テーブルのインデックスの範囲は [0, width - 1] である。  

注意

glCopyColorTable が利用できるのは、引き数に GL_EXTENSIONS を 指定して glGetString を呼んだ際に GL_ARB_imaging が 返される場合だけである。  

エラー

GL_INVALID_ENUM: target が指定可能な値のいずれかでない場合に起こる. GL_INVALID_VALUE: width が 0 より小さい場合に起こる. GL_INVALID_VALUE: internalformat が指定可能な値のいずれかでない場合に起こる. GL_TABLE_TOO_LARGE: 要求された色テーブルが大きすぎて、実装が対応していない場合に起こる。 GL_INVALID_OPERATION: glBegin と、その対になる glEnd の間で glCopyColorTable が実行されると起こる。  

関連する取得値

glGetColorTable, glGetColorTableParameter  

関連項目

glColorTable(3G), glColorTableParameter(3G), glReadPixels(3G)


 

Index

NAME
書式
引き数
説明
注意
エラー
関連する取得値
関連項目

jman



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