glPopMatrix 函式

glPushMatrixglPopMatrix函式會推送並彈出目前的矩陣堆疊。

語法

void WINAPI glPopMatrix(void);

參數

此函式沒有參數。

傳回值

此函式不會傳回值。

錯誤碼

推送完整矩陣堆疊或只包含單一矩陣的矩陣堆疊是一個錯誤。 不論是哪一種情況,都已設定錯誤旗標,而且不會對 OpenGL 狀態進行任何其他變更。

glGetError函式可以擷取下列錯誤碼。

名稱 意義
GL_STACK_UNDERFLOW
當目前的矩陣堆疊只包含單一矩陣時,會呼叫 函式。
GL_INVALID_OPERATION
對 glBegin 的呼叫與 glEnd的對應呼叫之間呼叫函式。

備註

每個矩陣模式都有一個矩陣堆疊。 在GL_MODELVIEW模式中,堆疊深度至少為 32。 在其他兩種模式中,GL_PROJECTION和GL_TEXTURE,深度至少為 2。 任何模式中的目前矩陣都是該模式堆疊頂端的矩陣。

glPushMatrix函式會將目前的矩陣堆疊向下推送一個,並複製目前的矩陣。 也就是說, 在 glPushMatrix 呼叫之後,堆疊頂端的矩陣與其下方的矩陣相同。 glPopMatrix函式會快顯目前的矩陣堆疊,並將目前的矩陣取代為堆疊下方的矩陣。 一開始,每個堆疊都包含一個矩陣,一個識別矩陣。

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

glGet 與引數GL_MATRIX_MODE

glGet with argument GL_MODELVIEW_MATRIX

glGet with argument GL_PROJECTION_MATRIX

glGet 搭配引數GL_TEXTURE_MATRIX

glGet with argument GL_MODELVIEW_STACK_DEPTH

glGet with argument GL_PROJECTION_STACK_DEPTH

具有引數的glGet GL_TEXTURE_STACK_DEPTH

glGet with argument GL_MAX_MODELVIEW_STACK_DEPTH

glGet 與引數GL_MAX_PROJECTION_STACK_DEPTH

glGet 與引數GL_MAX_TEXTURE_STACK_DEPTH

規格需求

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

另請參閱

glBegin

glEnd

glFrustum

glLoadIdentity

glLoadMatrix

glMatrixMode

glMultMatrix

glOrtho

glPushMatrix

glRotate

glScale

glTranslate

glViewport