glGetMinmax

Aus DGL Wiki
Version vom 7. April 2006, 15:30 Uhr von Dj3hut1 (Diskussion | Beiträge) (neu erstellt)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

glGetMinmax


Name

glGetMinmax - Holt die minimalen und maximalen Farbwerte eines Bildes oder einer Textur.

Delphi-Spezifikation

procedure glGetMinmax(target : TGLenum; reset : TGLboolean; format : TGLenum;
                      _type : TGLenum; values : PGLvoid); 


Parameter

target Muss GL_MINMAX sein.
reset Ist dieser Wert GL_TRUE, werden die Minimal- und Maximalwerte des Minmax-Puffers gelöscht.
format Bestimmt, von welchen Farbkomponenten die Minimal- und Maximalwerte abgefragt werden sollen. Mögliche Werte sind GL_RED, GL_GREEN, GL_BLUE, GL_ALPHA, GL_RGB, GL_BGR, GL_RGBA, GL_BGRA, GL_LUMINANCE oder GL_LUMINANCE_ALPHA.
_type Datentyp der Werte, welche in values zurück gegeben werden. Die folgenden symbolischen Konstanten werden akzeptiert: GL_UNSIGNED_BYTE, GL_BYTE, GL_BITMAP, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, GL_UNSIGNED_INT_2_10_10_10_REV
values Zeiger auf Minmax-Array, in das die Werte geschrieben werden sollen.


Beschreibung

glGetMinmax fragt den Zustand der aktuellen Minmax-Tabelle ab. Mit format und _type wird bestimmt, welche Farbkomponenten in welchem Format im Minmax-Array values auftreten. Dabei werden zuerst alle minimalen und danach alle maximalen Werte abgespeichert.

Ist z.B. format gleich GL_RGB, so befinden sich in values zuerst die minimalen Werte der roten, der grünen und der blauen Farbkomponente, gefolgt von den maximalen Werten.

Es können nur die Farbkomponenten abgefragt werden, die auch berechnet wurden. Welche Komponenten bei der Minmax-Operation berechnet werden, wird mit dem Parameter internalformat der Funktion glMinmax festgelegt.

Mit reset kann bestimmt werden, ob nach der Abfrage der Werte, diese im internen Puffer zurückgesetzt werden sollen. Ist dieser Parameter GL_TRUE, so werden alle Minimalwerte auf die maximal mögliche Representation und die Maximalwerte auf die minmal mögliche Representation gesetzt. Bei GL_FALSE werden keine Werte modifiziert.

Damit die minimalen und maximalen Werte eines Bildes oder einer Textur in der Imaging-Pipeline überhaupt berechnet werden, muss diese Operation vorher mit glEnable(GL_MINMAX) aktiviert werden.


Hinweise

glGetMinmax ist ab OpenGL Version 1.2 verfügbar.

glGetMinmax ist nur verfügbar, wenn GL_ARB_imaging im Rückgabewert von glGetString enthalten ist bei einem Aufruf mit dem Parameter GL_EXTENSIONS.


Fehlermeldungen

GL_INVALID_ENUM wird generiert wenn target nicht GL_MINMAX ist.
GL_INVALID_ENUM wird generiert wenn format keinen zugelassenen Wert hat.
GL_INVALID_ENUM wird generiert wenn type keinen zugelassenen Wert hat.
GL_INVALID_OPERATION wird generiert wenn glGetMinmax innerhalb eines glBegin-glEnd Blocks aufgerufen wird.

GL_INVALID_OPERATION wird generiert wenn

  • type einen der folgenden Werte hat:
    • GL_UNSIGNED_BYTE_3_3_2
    • GL_UNSIGNED_BYTE_2_3_3_REV
    • GL_UNSIGNED_SHORT_5_6_5
    • GL_UNSIGNED_SHORT_5_6_5_REV
und
  • format nicht GL_RGB ist.

GL_INVALID_OPERATION wird generiert wenn

  • type einen der folgenden Werte hat:
    • GL_UNSIGNED_SHORT_4_4_4_4
    • GL_UNSIGNED_SHORT_4_4_4_4_REV
    • GL_UNSIGNED_SHORT_5_5_5_1
    • GL_UNSIGNED_SHORT_1_5_5_5_REV
    • GL_UNSIGNED_INT_8_8_8_8
    • GL_UNSIGNED_INT_8_8_8_8_REV
    • GL_UNSIGNED_INT_10_10_10_2
    • GL_UNSIGNED_INT_2_10_10_10_REV
und
  • format weder GL_RGBA noch GL_BGRA ist.


Siehe auch

glMinmax, glResetMinmax, glGetMinmaxParameter