閱讀英文

共用方式為


glPixelMapuiv 函式

glPixelMapuiv函式會設定圖元傳輸地圖。

語法

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

參數

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
將色彩索引對應至 Alpha 元件。
GL_PIXEL_MAP_R_TO_R
將紅色元件對應至紅色元件。
GL_PIXEL_MAP_G_TO_G
將綠色元件對應至綠色元件。
GL_PIXEL_MAP_B_TO_B
將藍色元件對應至藍色元件。
GL_PIXEL_MAP_A_TO_A
將 Alpha 元件對應至 Alpha 元件。

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,而 mapize 不是兩個的乘冪。
GL_INVALID_OPERATION
函式是在 對 glBegin 的呼叫和 glEnd的對應呼叫之間呼叫。

備註

glPixelMap函式會設定翻譯資料表, 或maps,由glCopyPixelsglCopyTexImage1D、glCopyTexImage2DglCopyTexSubImage1DglCopyTexSubImage2DglDrawPixelsglReadPixelsglTexImage1DglTexImage2DglTexSubImage1D 和 glTexSubImage2D使用。 這些地圖的使用會在 glPixelTransfer 主題中完整描述,並部分說明圖元和紋理影像命令的主題。 本主題僅說明地圖的規格。

map參數是符號對應名稱,表示要設定的十個對應之一。 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指定的不帶正負號整數值會指定整數值,二進位點右邊的所有零。

下表顯示每個地圖的初始大小和值。 由色彩或樣板索引編制索引的對應必須有 mapize = 2 ^ n 表示某些 n 或未定義的結果。 每個對應的允許大小上限取決於實作,而且可以呼叫 glGet 搭配引數GL_MAX_PIXEL_MAP_TABLE來決定。 單一最大值適用于所有地圖,且至少為 32。

對應 查閱索引 查閱值 初始大小 初始值
GL_PIXEL_MAP_I_TO_I 色彩索引 色彩索引 1 0.0
GL_PIXEL_MAP_S_TO_S 樣板索引 樣板索引 1 0.0
GL_PIXEL_MAP_I_TO_R 色彩索引 R 1 0.0
GL_PIXEL_MAP_I_TO_G 色彩索引 G 1 0.0
GL_PIXEL_MAP_I_TO_B 色彩索引 B 1 0.0
GL_PIXEL_MAP_I_TO_A 色彩索引 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相關的資訊:

具有引數的glGet GL_PIXEL_MAP_I_TO_I_SIZE

具有引數的glGet GL_PIXEL_MAP_S_TO_S_SIZE

glGet with argument GL_PIXEL_MAP_I_TO_R_SIZE

glGet with argument GL_PIXEL_MAP_I_TO_G_SIZE

具有引數的glGet GL_PIXEL_MAP_I_TO_B_SIZE

具有引數的glGet GL_PIXEL_MAP_I_TO_A_SIZE

glGet with argument GL_PIXEL_MAP_R_TO_R_SIZE

具有引數的glGet GL_PIXEL_MAP_G_TO_G_SIZE

glGet with argument GL_PIXEL_MAP_B_TO_B_SIZE

glGet with argument GL_PIXEL_MAP_A_TO_A_SIZE

glGet with argument GL_MAX_PIXEL_MAP_TABLE

規格需求

需求
最低支援的用戶端
Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限桌面應用程式]
標頭
Gl.h
程式庫
Opengl32.lib
DLL
Opengl32.dll

另請參閱

glBegin

glCopyPixels

glDrawPixels

glEnd

glPixelStore

glPixelTransfer

glReadPixels

glTexImage1D

glTexImage2D