Функция glPushMatrix
Функции glPushMatrix и glPopMatrix отправляют и помещают текущий стек матрицы.
Синтаксис
void WINAPI glPushMatrix(void);
Параметры
У этой функции нет параметров.
Возвращаемое значение
Эта функция не возвращает значение.
Коды ошибок
При отправке полного стека матрицы или при выводе матричного стека, содержащего только одну матрицу, возникает ошибка. В любом случае флаг ошибки установлен, и никакие другие изменения не вносятся в состояние OpenGL.
Следующие коды ошибок могут быть получены функцией glGetError .
Имя | Значение |
---|---|
|
Функция была вызвана при заполнении текущего стека матрицы. |
|
Функция была вызвана между вызовом glBegin и соответствующим вызовом glEnd. |
Комментарии
Для каждого из режимов матрицы имеется стек матриц. В режиме GL_MODELVIEW глубина стека не менее 32. В двух других режимах, GL_PROJECTION и GL_TEXTURE, глубина не менее 2. Текущая матрица в любом режиме — это матрица в верхней части стека для этого режима.
Функция glPushMatrix отправляет текущий стек матрицы на один, дублируя текущую матрицу. То есть после вызова glPushMatrix матрица в верхней части стека идентична матрице под ней. Функция glPopMatrix выводит текущий стек матрицы, заменяя текущую матрицу на под ней в стеке. Изначально каждый из стеков содержит одну матрицу, матрицу идентификации.
Следующие функции извлекают сведения, связанные с glPushMatrix и glPopMatrix:
glGet с аргументом GL_MATRIX_MODE
glGet с аргументом GL_MODELVIEW_MATRIX
glGet с аргументом GL_PROJECTION_MATRIX
glGet с аргументом GL_TEXTURE_MATRIX
glGet с аргументом GL_MODELVIEW_STACK_DEPTH
glGet с аргументом GL_PROJECTION_STACK_DEPTH
glGet с аргументом GL_TEXTURE_STACK_DEPTH
glGet с аргументом GL_MAX_MODELVIEW_STACK_DEPTH
glGet с аргументом GL_MAX_PROJECTION_STACK_DEPTH
glGet с аргументом GL_MAX_TEXTURE_STACK_DEPTH
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|