glPolygonStipple: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
K (Der Kategorie GL zugeordnet)
()
Zeile 25: Zeile 25:
 
Das tüpfeln von Polygonen, ebenso wie bei Linien (siehe [[glLineStipple]]), deckte bestimmte Fragmente bei der Rasterung ab und erzeugt somit ein Muster. Das Tüpfeln ist hierbei abhängig vom [[Antialiasing]] des Polygons.
 
Das tüpfeln von Polygonen, ebenso wie bei Linien (siehe [[glLineStipple]]), deckte bestimmte Fragmente bei der Rasterung ab und erzeugt somit ein Muster. Das Tüpfeln ist hierbei abhängig vom [[Antialiasing]] des Polygons.
  
<b><i>mask is a pointer to a 32x32 stipple pattern that is stored in memory just like the pixel data supplied to a glDrawPixels call with height and width both equal to 32, a pixel format of GL_COLOR_INDEX, and data type of GL_BITMAP. That is, the stipple pattern is represented as a 32x32 array of 1-bit color indices packed in unsigned bytes. glPixelStore parameters like GL_UNPACK_SWAP_BYTES and GL_UNPACK_LSB_FIRST affect the assembling of the bits into a stipple pattern. Pixel transfer operations (shift, offset, pixel map) are not applied to the stipple image, however.</i></b>
+
Der Parameter '''''mask''''' ist ein Zeiger auf ein 32*32 großes Muster, welches so abgespeichert wurde wie ein solches für den Aufruf von [[glDrawPixels]] mit der Höhe und Breite von 32 , dem Pixel-Format GL_COLOR_INDEX und dem Datentyp GL_BITMAP(siehe [[glBitmap#Beispiel|Beispiel]] von [[glBitmap]]). Das heißt, dass das Muster als ein 32*32 großes Array von 1 Bit Farben Indexen angesehen wird, welches in (vorzeichenlose) Bytes gepackt wurde.
 +
Die Parameter von [[glPixelStore]] wie etwa GL_UNPACK_SWAP_BYTES und GL_UNPACK_LSB_FIRST, bestimmen die Verarbeitung der Bits zu dem Muster. Pixel Übertragungs(en: "pixel transfer") Operationen (etwa ''shift offset'' oder ''pixel map'') werden allerdings nicht auf das Muster angewant.
  
 
Um das Tüpfeln von Polygonen zu aktivieren oder zu deaktivieren, rufe [[glEnable]] und [[glDisable]] mit dem Argument GL_POLYGON_STIPPLE auf. <br>
 
Um das Tüpfeln von Polygonen zu aktivieren oder zu deaktivieren, rufe [[glEnable]] und [[glDisable]] mit dem Argument GL_POLYGON_STIPPLE auf. <br>

Version vom 12. September 2004, 09:44 Uhr

Vorlage:unvollständig

glPolygonStipple


Name

glPolygonStipple - Setzt das Muster mit dem Polygone getüpfelt werden.


Delphi-Spezifikation

procedure glPolygonStipple(const mask : PGLubyte;)


Parameter

mask Spezifiziert einen Zeiger auf einem 32x32 Tüpfel-Muster, dass im Speicher genauso abgelegt wird wie bei glDrawPixels.


Beschreibung

Das tüpfeln von Polygonen, ebenso wie bei Linien (siehe glLineStipple), deckte bestimmte Fragmente bei der Rasterung ab und erzeugt somit ein Muster. Das Tüpfeln ist hierbei abhängig vom Antialiasing des Polygons.

Der Parameter mask ist ein Zeiger auf ein 32*32 großes Muster, welches so abgespeichert wurde wie ein solches für den Aufruf von glDrawPixels mit der Höhe und Breite von 32 , dem Pixel-Format GL_COLOR_INDEX und dem Datentyp GL_BITMAP(siehe Beispiel von glBitmap). Das heißt, dass das Muster als ein 32*32 großes Array von 1 Bit Farben Indexen angesehen wird, welches in (vorzeichenlose) Bytes gepackt wurde. Die Parameter von glPixelStore wie etwa GL_UNPACK_SWAP_BYTES und GL_UNPACK_LSB_FIRST, bestimmen die Verarbeitung der Bits zu dem Muster. Pixel Übertragungs(en: "pixel transfer") Operationen (etwa shift offset oder pixel map) werden allerdings nicht auf das Muster angewant.

Um das Tüpfeln von Polygonen zu aktivieren oder zu deaktivieren, rufe glEnable und glDisable mit dem Argument GL_POLYGON_STIPPLE auf.
Das Tüpfeln von Polygonen ist beim Start deaktiviert.
Wenn es aktiviert ist, wird ein rasterisiertes Fragment mit den Fensterkoordinaten xw und yw nur dann zur nächsten Stufe der Rendering Pipeline geschickt, wenn das (xw mod 32)te Bit in der (yw mod 32)sten Zeile des Tüpfelmusters 1 (eins/true) ist. When das Tüpfeln der Polygone deaktiviert ist, verhält sich die GL so als ob das Tüpfelmuster nur aus Einzen besteht.


Fehlermeldungen

GL_INVALID_OPERATION wird generiert wenn glPolygoneStipple innerhalb eines glBegin-glEnd Blocks aufgerufen wird.


Zugehörige Wertrückgaben

glGetPolygonStipple
glIsEnabled mit dem Token with argument GL_POLYGON_STIPPLE

Siehe auch

glDrawPixels, glLineStipple, glPixelStore, glPixelTransfer