Функция glRasterPos4i

Задает позицию растра для операций с пикселями.

Синтаксис

void WINAPI glRasterPos4i(
   GLint x,
   GLint y,
   GLint z,
   GLint w
);

Параметры

x

Задает координату X для текущей позиции растра.

y

Задает координату Y для текущей позиции растра.

z

Задает Z-координату для текущей позиции растра.

w

W-координата текущей позиции растра.

Возвращаемое значение

Эта функция не возвращает значение.

Комментарии

OpenGL поддерживает трехмерное положение в координатах окна. Эта позиция, называемая позицией растра, поддерживается с точностью допикселя. Он используется для размещения операций записи пикселей и точечных рисунков. См . раздел glBitmap, glDrawPixels и glCopyPixels.

Текущая растровая позиция состоит из трех координат окна (x, y, z), значения w клипа, расстояния между координатами глаз, допустимого бита и связанных с ними цветовых данных и координат текстур. Координата w является координатой клипа, так как w не проецируется на координаты окна. Функция glRasterPos4 явно задает координаты объектов x, y, z и w . Функция glRasterPos3 явно задает координаты объектов x, y и z , в то время как w неявно имеет значение 1. Функция glRasterPos2 использует значения аргументов для x и y , неявно устанавливая значения z и w равными нулю и единице.

Координаты объектов, представленные glRasterPos, обрабатываются так же, как и в команде glVertex . Они преобразуются текущим представлением модели и матрицами проекции и передаются на этап обрезки. Если вершина не отбирается, она проецируется и масштабируется до координат окон, которые становятся новой текущей позицией растра, и устанавливается флаг GL_CURRENT_RASTER_POSITION_VALID. Если вершина отбирается, допустимый бит очищается, а текущее положение растра и связанные координаты цвета и текстуры не определены.

Текущее положение растра также включает некоторые связанные данные цвета и координаты текстуры. Если освещение включено, то GL_CURRENT_RASTER_COLOR в режиме RGBA или для GL_CURRENT_RASTER_INDEX в режиме цветного индекса устанавливается цвет, полученный при вычислении освещения (см. glLight, glLightModel и glShadeModel). Если освещение отключено, для обновления текущего цвета растра используется текущий цвет (в режиме RGBA, переменной состояния GL_CURRENT_COLOR) или индекс цвета (в режиме цветовых индексов переменная состояния GL_CURRENT_INDEX).

Аналогичным образом GL_CURRENT_RASTER_TEXTURE_COORDS обновляется как функция GL_CURRENT_TEXTURE_COORDS на основе матрицы текстуры и функций создания текстуры (см. glTexGen). Наконец, расстояние от источника системы координат взгляда до вершины, преобразованное только матрицей представления модели, заменяет 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 растра всегда сохраняет свое начальное значение.

Примечание

Положение растра изменяется как glRasterPos , так и glBitmap.

Примечание

Если координаты положения растра недопустимы, команды рисования, основанные на позиции растра, игнорируются (то есть они не приводят к изменению состояния OpenGL).

Следующие функции извлекают сведения, связанные с glRasterPos:

glGet с аргументом GL_CURRENT_RASTER_POSITION
glGet с аргументом GL_CURRENT_RASTER_POSITION_VALID
glGet с аргументом GL_CURRENT_RASTER_DISTANCE
glGet с аргументом GL_CURRENT_RASTER_COLOR
glGet с аргументом GL_CURRENT_RASTER_INDEX
glGet с аргументом 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