glRasterPos4iv 函式

指定圖元作業的點陣位置。

語法

void WINAPI glRasterPos4iv(
   const GLint *v
);

參數

V

四個元素陣列的指標,指定目前點陣位置的 x、y、z 和 w 座標。

傳回值

此函式不會傳回值。

備註

OpenGL 會在視窗座標中維護 3D 位置。 這個位置稱為點陣位置,會以子圖元精確度來維護。 它用來放置圖元和點陣圖寫入作業。 請參閱 glBitmapglDrawPixelsglCopyPixels

目前的點陣位置包含三個視窗座標 , (x、y、z) 、裁剪座標 w 值、眼球座標距離、有效位,以及相關聯的色彩資料和紋理座標。 w座標是裁剪座標,因為w不會投影到視窗座標。 glRasterPos4函式會明確指定物件座標x、y、zw。 glRasterPos3 函式會明確指定物件座標 x、yz ,而 w 會隱含地設定為一個。 glRasterPos2 函式會使用 xy 的引數值,同時隱含地將 zw 設定為零和一。

glRasterPos所呈現的物件座標會被視為glVertex命令的物件座標。 它們會由目前的 modelview 和投影矩陣轉換,並傳遞至裁剪階段。 如果未擷取頂點,則會投影並縮放至視窗座標,這會成為新的目前點陣位置,並設定GL_CURRENT_RASTER_POSITION_VALID旗標。 如果頂點被擷取,則會清除有效的位,而且未定義目前的點陣位置和相關聯的色彩和紋理座標。

目前的點陣位置也包含一些相關聯的色彩資料和紋理座標。 如果已啟用光源,則會在 RGBA 模式中GL_CURRENT_RASTER_COLOR,或在色彩索引模式中GL_CURRENT_RASTER_INDEX設定為光源計算所產生的色彩, (請參閱glLight、glLightModelglShadeModel) 。 如果停用光源,RGBA 模式中的目前色彩 (、狀態變數GL_CURRENT_COLOR) 或色彩索引 (,則會使用狀態變數GL_CURRENT_INDEX) 來更新目前的點陣色彩。

同樣地,GL_CURRENT_RASTER_TEXTURE_COORDS會根據紋理矩陣和紋理產生函數來更新為GL_CURRENT_TEXTURE_COORDS函式, (請參閱 glTexGen) 。 最後,只有 modelview 矩陣所轉換的眼球座標系統原點與頂點的距離會取代GL_CURRENT_RASTER_DISTANCE。

一開始,目前的點陣位置會 (0,0,0,1) ,目前的點陣距離是 0,有效的位是設定,相關聯的 RGBA 色彩會 (1,1,1,1) ,相關聯的色彩索引為 1,且相關聯的紋理座標 (0、0、0、0、1) 。 在 RGBA 模式中,GL_CURRENT_RASTER_INDEX一律為 1;在色彩索引模式中,目前的點陣 RGBA 色彩一律會維持其初始值。

注意

點陣位置會由 glRasterPosglBitmap修改。

注意

當點陣位置座標無效時,會忽略以點陣位置為基礎的繪圖命令, (也就是說,它們不會變更 OpenGL 狀態) 。

下列函式會擷取 glRasterPos的相關資訊:

glGet with argument GL_CURRENT_RASTER_POSITION
glGet with argument GL_CURRENT_RASTER_POSITION_VALID
glGet with argument GL_CURRENT_RASTER_DISTANCE
glGet with argument GL_CURRENT_RASTER_COLOR
glGet with argument GL_CURRENT_RASTER_INDEX
glGet with argument GL_CURRENT_RASTER_TEXTURE_COORDS

規格需求

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

另請參閱

glBegin

glBitmap

glCopyPixels

glDrawPixels

glEnd

glLight

glLightModel

glShadeModel

glTexCoord

glTexGen

glVertex