glConvolutionFilter: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
(neu erstellt)
 
K (Delphi-Spezifikation)
Zeile 6: Zeile 6:
 
<br>
 
<br>
 
== Delphi-Spezifikation ==
 
== Delphi-Spezifikation ==
  procedure '''glConvolutionFilter1D'''(''target'': TGLenum; ''internalformat'' : TGLenum; ''width'' : TGLsizei; ''format'' : TGLenum; ''_type'' : TGLenum; const ''image'' : PGLvoid)<br>
+
  procedure '''glConvolutionFilter1D'''(''target'': TGLenum; ''internalformat'' : TGLenum;  
  procedure '''glConvolutionFilter2D'''(''target'': TGLenum; ''internalformat'' : TGLenum; ''width'' : TGLsizei; ''height'' : TGLsizei; ''format'' : TGLenum; ''_type'' : TGLenum; const ''image'' : PGLvoid)<br>
+
                                ''width'' : TGLsizei;  
 +
                                ''format'' : TGLenum; ''_type'' : TGLenum;  
 +
                                const ''image'' : PGLvoid)
 +
 +
  procedure '''glConvolutionFilter2D'''(''target'': TGLenum; ''internalformat'' : TGLenum;  
 +
                                ''width'' : TGLsizei; ''height'' : TGLsizei;  
 +
                                ''format'' : TGLenum; ''_type'' : TGLenum;  
 +
                                const ''image'' : PGLvoid)<br>
  
 
== Parameter ==
 
== Parameter ==

Version vom 3. Januar 2006, 14:37 Uhr

glConvolutionFilter

Name

glConvolutionFilter - Legt einen Convolution-Filter fest.


Delphi-Spezifikation

procedure glConvolutionFilter1D(target: TGLenum; internalformat : TGLenum; 
                                width : TGLsizei; 
                                format : TGLenum; _type : TGLenum; 
                                const image : PGLvoid)

procedure glConvolutionFilter2D(target: TGLenum; internalformat : TGLenum; 
                                width : TGLsizei; height : TGLsizei; 
                                format : TGLenum; _type : TGLenum; 
                                const image : PGLvoid)

Parameter

target Ziel des Filter. Muss für glConvolutionFilter1D als GL_CONVOLUTION_1D und für glConvolutionFilter2D als GL_CONVOLUTION_2D gesetzt sein.
internalformat Internes Format der Pixel, auf die der Filter angewendet wird. Nicht akzeptiert werden die Parameter GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24 und GL_DEPTH_COMPONENT32.
width Breite des Filterkernels
height Höhe des Filterkernels (nur bei glConvolutionFilter2D)
format Pixelformat des Filterkernels. Nicht akzeptiert werden die Parameter GL_COLOR_INDEX, GL_STENCIL_INDEX und GL_DEPTH_COMPONENT.
_type Datentyp für Pixelwerte des Filterkernels. Nicht akzeptiert wird der Parameter GL_BITMAP.
image Zeiger auf die Daten des Filterkernels.


Beschreibung

Dieser Befehl setzt einen eindimensionalen (mit glConvolutionFilter1D) oder zweidimensionalen (mit glConvolutionFilter2D) Convolution-Filter (Filterkernel), welcher bei den OpenGL-Befehlen : glCopyPixels, glDrawPixels, glReadPixels und glTexImage1D bzw. glTexImage2D angewendet wird.


Hinweise

Um den Convolution-Filter zu aktivieren, muß zusätzlich glEnable(GL_CONVOLUTION_1D) bzw. glEnable(GL_CONVOLUTION_2D) aufgerufen werden. Die Anwendung des Convolution-Filters kann mit der Funktion glConvolutionParameter weiterhin beeinflusst werden.


Fehlermeldungen

GL_INVALID_ENUM wird generiert wenn target nicht GL_CONVOLUTION_1D oder GL_CONVOLUTION_2D ist. (entsprechend der benutzten Funktion)

GL_INVALID_ENUM wird generiert wenn internalformat ungültige Werte übergeben wurden. Akzeptiert werden alle interne Pixelformate außer GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24 und GL_DEPTH_COMPONENT32.

GL_INVALID_ENUM wird generiert wenn format ungültige Werte übergeben wurden. Akzeptiert werden alle Formatangaben außer GL_COLOR_INDEX, GL_STENCIL_INDEX und GL_DEPTH_COMPONENT

GL_INVALID_ENUM wird generiert wenn type keine gültige Typkonstante übergeben wurde. Akzeptiert werden alle Typangaben außer GL_BITMAP.

GL_INVALID_VALUE wird generiert wenn die Parameter width und height kleiner als 0 oder größer als die jeweilig maximal zulässigen Werte sind. Mittels [[glGetCon- volutionParameter]] (mit target GL_CONVOLUTION_2D und Parameter GL_MAX_CONVOLUTION_WIDTH oder GL_MAX_CONVOLUTION_HEIGHT) können diese Werte abgefragt werden.

Zugehörige Wertrückgaben

glGetConvolutionFilter
glIsEnabled mit dem Token GL_CONVOLUTION_1D bzw. GL_CONVOLUTION_2D.


Siehe auch

glConvolutionParameter, glCopyConvolutionFilter1D, glCopyConvolutionFilter2D, glGetConvolutionFilter, glGetConvolutionParameter, glSeparableFilter2D