glScissor: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
(An Funktionsvorlage angepasst)
Zeile 1: Zeile 1:
 
= glScissor =
 
= glScissor =
 +
 
<br>
 
<br>
 
== Name ==
 
== Name ==
 
+
----
 
'''glScissor''' - Definiert die Scissor-Box. (scissor stammt aus dem Lateinischem und bedeutet ''Vorschneider'')
 
'''glScissor''' - Definiert die Scissor-Box. (scissor stammt aus dem Lateinischem und bedeutet ''Vorschneider'')
  
 
<br>
 
<br>
 
== Delphi-Spezifikation ==
 
== Delphi-Spezifikation ==
 
+
----
procedure '''glScissor'''(''x'' : TGLint; ''y'' : TGLint; ''width'' : TGLsizei; ''height'' : TGLsizei);
+
procedure '''glScissor'''(''x'' : glInt; ''y'' : glInt; ''width'' : glSizei; ''height'' : glSizei);
  
 
<br>
 
<br>
 
== Parameter ==
 
== Parameter ==
 
+
----
<table border=1>
+
<table border=1 rules=all>
 
<tr>
 
<tr>
<td>x,y</td>
+
<td>'''x,y'''</td>
 
<td>Gibt die untere/linke Ecke der Scissorbox an. Standard ist 0/0.</td>
 
<td>Gibt die untere/linke Ecke der Scissorbox an. Standard ist 0/0.</td>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
<td>width,height</td>
+
<td>'''width,height'''</td>
 
<td>Gibt Höhe und Breite der Scissorbox an. Wenn ein GL-Kontext zum ersten Mal an ein Fenster gebunden wird, werden diese Werte auf die Dimensionen des GL-Kontextes gesetzt</td>
 
<td>Gibt Höhe und Breite der Scissorbox an. Wenn ein GL-Kontext zum ersten Mal an ein Fenster gebunden wird, werden diese Werte auf die Dimensionen des GL-Kontextes gesetzt</td>
 
</tr>
 
</tr>
Zeile 26: Zeile 27:
 
<br>
 
<br>
 
== Beschreibung ==
 
== Beschreibung ==
 
+
----
 
'''glScissor''' beschreibt ein Rechteck (die Scissorbox genannt) in Fensterkoordinaten. Die bieden ersten Argumente (x und y) geben die untere/linke Ecke der Box and; width und height beschreiben die Dimensionen der Box.
 
'''glScissor''' beschreibt ein Rechteck (die Scissorbox genannt) in Fensterkoordinaten. Die bieden ersten Argumente (x und y) geben die untere/linke Ecke der Box and; width und height beschreiben die Dimensionen der Box.
  
Zeile 36: Zeile 37:
 
<br>
 
<br>
 
== Fehlermeldungen ==
 
== Fehlermeldungen ==
 +
----
 +
'''GL_INVALID_VALUE''' wird generiert wenn Höhe oder Breite negativ sind.<br>
  
GL_INVALID_VALUE wird generiert wenn Höhe oder Breite negativ sind.<br>
+
'''GL_INVALID_OPERATION''' wird generiert wenn '''glScissor''' zwischen einem [[glBegin]] und dem dazugehörigem [[glEnd]] aufgerufen wird.
 
 
GL_INVALID_OPERATION wird generiert wenn '''glScissor''' zwischen einem [[glBegin]] und dem dazugehörigem [[glEnd]] aufgerufen wird.
 
  
 
<br>
 
<br>
 
== Zugehörige Wertrückgaben ==  
 
== Zugehörige Wertrückgaben ==  
 
+
----
[[glGet]] mit dem Argument GL_SCISSOR_BOX
+
[[glGet]] mit dem Argument '''GL_SCISSOR_BOX'''.
[[glIsEnabled]] mit dem Argument GL_SCISSOR_TEST
+
[[glIsEnabled]] mit dem Argument '''GL_SCISSOR_TEST'''.
  
 
<br>
 
<br>
 
== Siehe auch ==
 
== Siehe auch ==
 
+
----
 
[[glEnable]], [[glViewport]]
 
[[glEnable]], [[glViewport]]

Version vom 9. August 2004, 11:47 Uhr

glScissor


Name


glScissor - Definiert die Scissor-Box. (scissor stammt aus dem Lateinischem und bedeutet Vorschneider)


Delphi-Spezifikation


procedure glScissor(x : glInt; y : glInt; width : glSizei; height : glSizei);


Parameter


x,y Gibt die untere/linke Ecke der Scissorbox an. Standard ist 0/0.
width,height Gibt Höhe und Breite der Scissorbox an. Wenn ein GL-Kontext zum ersten Mal an ein Fenster gebunden wird, werden diese Werte auf die Dimensionen des GL-Kontextes gesetzt


Beschreibung


glScissor beschreibt ein Rechteck (die Scissorbox genannt) in Fensterkoordinaten. Die bieden ersten Argumente (x und y) geben die untere/linke Ecke der Box and; width und height beschreiben die Dimensionen der Box.

Um den Scissortest zu aktivieren bzw. zu deaktivieren, ruft man glEnable bzw. glDisable mit dem Argument GL_SCISSOR_TEST auf. Der Test ist in der Grundeinstellung deaktiviert. Sobald der Test aktiviert ist, können nur Pixel die innerhalb der Scissorbox liegen von Zeichenkommandos modifiziert werden. Fensterkoordinaten besitzen an den geteilten Rändern von Pixeln. glScissor(0,0,1,1) z.B. lässt nur modifizieren des Pixels der ganz unten links liegt zu, während glScissor(0,0,0,0) überhaupt keine Pixelmodifkationen zulässt.

Sobald der Scissortest deaktiviert wird, verhält es sich so als würde die Scissorbox den kompletten Viewport beschreiben.


Fehlermeldungen


GL_INVALID_VALUE wird generiert wenn Höhe oder Breite negativ sind.

GL_INVALID_OPERATION wird generiert wenn glScissor zwischen einem glBegin und dem dazugehörigem glEnd aufgerufen wird.


Zugehörige Wertrückgaben


glGet mit dem Argument GL_SCISSOR_BOX. glIsEnabled mit dem Argument GL_SCISSOR_TEST.


Siehe auch


glEnable, glViewport