glMinmax

Aus DGL Wiki
Wechseln zu: Navigation, Suche

glMinmax

Name

glMinmax - definiert die Minmax-Tabelle.

Delphi-Spezifikation

procedure glMinmax(target : TGLenum; internalformat : TGLenum;
                    sink : TGLboolean)


Parameter

target Die Minmax-Tabelle, dessen Parameter gesetzt werden. Muss GL_MINMAX sein.
internalformat Das Format der Einträge der Minmax-Tabelle. Zulässige Werte sind GL_ALPHA, GL_ALPHA4, GL_ALPHA8, GL_ALPHA12, GL_ALPHA16, GL_LUMINANCE, GL_LUMINANCE4, GL_LUMINANCE8, GL_LUMINANCE12, GL_LUMINANCE16, GL_LUMINANCE_ALPHA, GL_LUMINANCE4_ALPHA4, GL_LUMINANCE6_ALPHA2, GL_LUMINANCE8_ALPHA8, GL_LUMINANCE12_ALPHA4, GL_LUMINANCE12_ALPHA12, GL_LUMINANCE16_ALPHA16, GL_R3_G3_B2, GL_RGB, GL_RGB4, GL_RGB5, GL_RGB8, GL_RGB10, GL_RGB12, GL_RGB16, GL_RGBA, GL_RGBA2, GL_RGBA4, GL_RGB5_A1, GL_RGBA8, GL_RGB10_A2, GL_RGBA12 und GL_RGBA16.
sink Falls GL_TRUE, werden die Pixel durch den Minmax-Prozess zerstört und kein Zeichnen oder Texturladen findet statt. Falls GL_FALSE, werden die Pixel zum letzten Konvertierungs-Prozess nach Minmax weitergeleitet.

Beschreibung

Wenn GL_MINMAX aktiviert ist, werden die RGBA-Komponenten der eintreffenden Pixel mit dem Minimal- und Maximalwert für jede Komponente verglichen, welche in der zweielementigen Minmax-Tabelle gespeichert werden. (Das erste Element speichert das Minimum und das zweite Element speichert das Maximum.) Falls eine Pixelkomponente grösser als die entsprechende Komponente im Maximumelement ist, dann wird das Maximumelement mit dem Wert der Pixelkomponente aktualisiert. Falls eine Pixelkomponente kleiner als die entsprechende Komponente im Minimumelement ist, dann wird das Minimumelement mit dem Wert der Pixelkomponente aktualisiert. (Enthält in beiden Fällen das interne Format der Minmax-Tabelle die Helligkeits-Komponente, wird die R-Farbkomponente der eintreffenden Pixel für den Vergleich benutzt.) Die Inhalte der Minmax-Tabelle können zu einem späteren Zeitpunkt durch den Aufruf von glGetMinmax zurückgeliefert werden. Die Minmax-Operation wird durch den Aufruf von glEnable oder glDisable mit dem Argument GL_MINMAX aktiviert bzw. deaktivert.

glMinmax definiert die aktuelle Minmax-Tabelle neu, um Einträge zu haben, die durch internalformat spezifiziert werden. Das maximale Element wird mit dem kleinstmöglichstem Komponentenwert initialisiert und das minimale Element wird mit dem grösstmöglichstem Komponentenwert initialisiert. Die Werte in der vorhergehenden Minmax-Tabelle, falls existent, gehen verloren. Falls sink GL_TRUE ist, werden die Pixel nach Minmax aufgegeben; es findet keine weitere Verarbeitung der Pixel statt, und kein Zeichnen, Texturladen oder Zurücklesen von Pixel wird ausgeführt.

Hinweise

glMinmax ist erst ab GL Version 1.2 oder höher nutzbar.

glMinmax ist nur verfügbar, wenn GL_ARB_imaging von glGetString mit dem Argument GL_EXTENSIONS zurückgeliefert wird.

Die Minmax-Operation wird erst durch den Aufruf von glEnable(GL_MINMAX) aktiviert.

Die Minmax-Operation wird nur auf RGBA-Komponenten angewendet.

Fehlermeldungen

GL_INVALID_ENUM wird generiert, wenn target keinen der zulässigen Werte hat.

GL_INVALID_ENUM wird generiert, wenn internalformat keinen der zulässigen Werte hat.

GL_INVALID_VALUE wird generiert, wenn sink weder den Wert GL_TRUE, noch GL_FALSE hat.

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



Zugehörige Wertrückgaben

glGetMinmaxParameter

Siehe auch

glGetMinmax, glResetMinmax