Bezeichnung
gl.LogicOp -- setzt die logische Pixeloperation für die Farbindexwiedergabe
Übersicht
gl.LogicOp(opcode)
Beschreibung
gl.LogicOp() gibt eine logische Operation an, die, wenn sie aktiviert ist, zwischen dem eingehenden Farbindex oder der RGBA-Farbe und dem Farbindex oder der RGBA-Farbe an der entsprechenden Stelle im Rahmenpuffer angewendet wird. Um die logische Verknüpfung zu aktivieren oder zu deaktivieren, rufen Sie gl.Enable() und gl.Disable() über die symbolische Konstante #GL_COLOR_LOGIC_OP auf für den RGBA-Modus oder #GL_INDEX_LOGIC_OP für den Farbindex-Modus. Der Anfangswert ist für beide Vorgänge deaktiviert.

#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

opcode ist eine symbolische Konstante, die aus der obigen Liste ausgewählt wurde. In der Erklärung der logischen Operationen stellt s den eingehenden Farbindex und d den Index im Rahmenpuffer dar. Es werden Standard-C-Sprachoperatoren verwendet. Wie diese bitweisen Operatoren vermuten lassen, wird die logische Operation unabhängig voneinander auf jedes Bitpaar der Quell- und Zielindizes oder Farben angewendet.

Logische Operationen mit dem Farbindex werden immer unterstützt. RGBA logische Operationen werden nur unterstützt, wenn die GL-Version 1.1 oder höher ist.

Wenn mehr als ein RGBA-Farbpuffer oder Indexpuffer zum Zeichnen aktiviert ist, werden logische Operationen für jeden aktivierten Puffer separat ausgeführt, wobei für den Zielwert der Inhalt dieses Puffers verwendet wird. Siehe gl.DrawBuffer für Details.

Weitere Informationen finden Sie in einem OpenGL-Referenzhandbuch.

Eingaben
opcode
gibt eine symbolische Konstante ein, die eine logische Operation auswählt (siehe oben für unterstützte Konstanten)
Fehler
#GL_INVALID_ENUM wird erzeugt, wenn opcode kein akzeptierter Wert ist.

#GL_INVALID_OPERATION wird erzeugt, wenn gl.LogicOp() zwischen gl.Begin() und gl.End() ausgeführt wird.

Verbundene get-operationen
gl.Get() mit dem Argument #GL_LOGIC_OP_MODE.

gl.IsEnabled() mit dem Argument #GL_COLOR_LOGIC_OP oder #GL_INDEX_LOGIC_OP.


Navigation zeigen