|
ist ein bit-OR Argument. GL_COLOR_BUFFER_BIT
und GL_DEPTH_BUFFER_BIT
sind ganzzahlige Konstanten (0x00004000
bzw. 0x00000100
), und das Ergebnis der Operation ist 0x00000500
. Dies wird in glClear
übergeben - eine einzelne Zahl, nicht mehrere Argumente.
Man kann den Operator &
(bit-AND) verwenden, um Bits aus ganzen Zahlen herauszuholen. Z.B.
WRITE = 1
READ = 2
FORCE = 4
def my_method(code)
puts "write" if code & WRITE != 0
puts "read" if code & READ != 0
puts "force" if code & FORCE != 0
end
my_method(READ | FORCE)
# => read
# => force
Dies ist nicht sehr üblich in Ruby, wie wir bessere und klarere Möglichkeiten haben, ähnliche Dinge zu tun (zum Beispiel könnte man sagen my_method(:read, force: true)
ist klarer, und es ist auf jeden Fall einfacher zu bedienen). Dies ist jedoch ziemlich Standard in C und Ruby OpenGL ist ein ziemlich dünner Wrapper über die C-Funktionen.
Danke !!!! so klar. – Andrek