Поделиться через


Функция glLogicOp

Функция glLogicOp указывает логическую операцию пикселя для отрисовки цветового индекса.

Синтаксис

void WINAPI glLogicOp(
   GLenum opcode
);

Параметры

Код

Символьная константа, которая выбирает логическую операцию. Следующие символы принимаются, где s равно значению исходного бита и d является значением целевого бита.

Значение Значение
GL_CLEAR
0
GL_SET
1
GL_COPY
s
GL_COPY_INVERTED
!s
GL_NOOP
d
GL_INVERT
!D
GL_AND
s & d
GL_NAND
! (s & d)
GL_OR
s | D
GL_NOR
! (s | d)
GL_XOR
s ^ d
GL_EQUIV
! (s ^ d)
GL_AND_REVERSE
s & !d
GL_AND_INVERTED
!s & d
GL_OR_REVERSE
s | !d
GL_OR_INVERTED
!s | D

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

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

Коды ошибок

Следующие коды ошибок можно получить функцией glGetError .

Имя. Значение
GL_INVALID_ENUM
opcode не был допустимым значением.
GL_INVALID_OPERATION
Функция была вызвана между вызовом glBegin и соответствующим вызовом glEnd.

Замечания

Функция glLogicOp указывает логическую операцию, которая при включении применяется между входящим цветовым индексом и индексом цвета в соответствующем расположении в кадре. Логическая операция включена или отключена с glEnable и glDisable с помощью символьной константы GL_LOGIC_OP.

Параметр opcode — это символьная константа, выбранная из приведенного ниже списка. В объяснении логических операций s представляет входящий цветовый индекс и d представляет индекс в фреймбуфере. Используются стандартные операторы языка C. По мере того как эти побитовые операторы предполагают, логическая операция применяется независимо к каждой битовой паре исходных и целевых индексов.

Операции логических пикселей не применяются к буферам цветов RGBA.

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

Параметр opcode должен быть одним из 16 принятых значений. Другие значения приводят к ошибке.

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

glGet с аргументом GL_LOGIC_OP_MODE

glIsEnabled с аргументом GL_LOGIC_OP

Requirements

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Верхний колонтитул
Gl.h
Библиотека
Opengl32.lib
DLL-библиотеки
Opengl32.dll

См. также

glAlphaFunc

glBegin

glBlendFunc

glDrawBuffer

glEnable

glEnd

glIsEnabled

glStencilOp