Manual Reference Pages  - GLCONVOLUTIONPARAMETER (3G)

NAME

glConvolutionParameterf, glConvolutionParameteri, glConvolutionParameterfv, glConvolutionParameteriv - set convolution parameters

CONTENTS

C Specification
Parameters
C Specification
Parameters
Description
Notes
Errors
Associated Gets
See Also

C SPECIFICATION

void glConvolutionParameterf( GLenum target,

                            GLenum pname,
                            GLfloat params )

void glConvolutionParameteri( GLenum target,

                            GLenum pname,
                            GLint params )

PARAMETERS

target The target for the convolution parameter. Must be one of  GL_CONVOLUTION_1D,  GL_CONVOLUTION_2D, or  GL_SEPARABLE_2D.
pname The parameter to be set. Must be  GL_CONVOLUTION_BORDER_MODE.
params The parameter value. Must be one of  GL_REDUCE,  GL_CONSTANT_BORDER,  GL_REPLICATE_BORDER.

C SPECIFICATION

void glConvolutionParameterfv( GLenum target,

                             GLenum pname,
                             const GLfloat *params )

void glConvolutionParameteriv( GLenum target,

                             GLenum pname,
                             const GLint *params )

PARAMETERS

target The target for the convolution parameter. Must be one of  GL_CONVOLUTION_1D,  GL_CONVOLUTION_2D, or  GL_SEPARABLE_2D.
pname The parameter to be set. Must be one of  GL_CONVOLUTION_BORDER_MODE,  GL_CONVOLUTION_BORDER_COLOR,  GL_CONVOLUTION_FILTER_SCALE, or  GL_CONVOLUTION_FILTER_BIAS.
params The parameter value. If pname is  GL_CONVOLUTION_BORDER_MODE, params must be one of  GL_REDUCE,  GL_CONSTANT_BORDER, or  GL_REPLICATE_BORDER. Otherwise, must be a vector of four values (for red, green, blue, and alpha, respectively) to be used for scaling (when pname is  GL_CONVOLUTION_FILTER_SCALE), or biasing (when pname is  GL_CONVOLUTION_FILTER_BIAS) a convolution filter kernel or setting the constant border color (when pname is  GL_CONVOLUTION_BORDER_COLOR.

DESCRIPTION

 glConvolutionParameter sets the value of a convolution parameter.

target selects the convolution filter to be affected:  GL_CONVOLUTION_1D,  GL_CONVOLUTION_2D, or  GL_SEPARABLE_2D for the 1D, 2D, or separable 2D filter, respectively.

pname selects the parameter to be changed.  GL_CONVOLUTION_FILTER_SCALE and  GL_CONVOLUTION_FILTER_BIAS affect the definition of the convolution filter kernel; see  glConvolutionFilter1D,  glConvolutionFilter2D, and  glSeparableFilter2D for details. In these cases, params is an array of four values to be applied to red, green, blue, and alpha values, respectively. The initial value for  GL_CONVOLUTION_FILTER_SCALE is (1, 1, 1, 1), and the initial value for  GL_CONVOLUTION_FILTER_BIAS is (0, 0, 0, 0).

A pname value of  GL_CONVOLUTION_BORDER_MODE controls the convolution border mode. The accepted modes are:
 GL_REDUCE The image resulting from convolution is smaller than the source image. If the filter width is Wf and height is Hf, and the source image width is Ws and height is Hs, then the convolved image width will be Ws - Wf + 1 and height will be Hs - Hf + 1. (If this reduction would generate an image with zero or negative width and/or height, the output is simply null, with no error generated.) The coordinates of the image resulting from convolution are zero through Ws - Wf in width and zero through Hs - Hf in height.
 GL_CONSTANT_BORDER The image resulting from convolution is the same size as the source image, and processed as if the source image were surrounded by pixels with their color specified by the  GL_CONVOLUTION_BORDER_COLOR.
 GL_REPLICATE_BORDER
  The image resulting from convolution is the same size as the source image, and processed as if the outermost pixel on the border of the source image were replicated.

NOTES

 glConvolutionParameter is present only if  GL_ARB_imaging is returned when  glGetString is called with an argument of  GL_EXTENSIONS.

In cases where errors can result from the specification of invalid image dimensions, it is the dimensions after convolution that are tested, not the dimensions of the source image. For example,  glTexImage1D requires power-of-two image size. When  GL_REDUCE border mode is in effect, the source image must be larger than the final power-of-two size by one less than the size of the 1D filter kernel.

ERRORS

 GL_INVALID_ENUM is generated if target is not one of the allowable values.

 GL_INVALID_ENUM is generated if pname is not one of the allowable values.

 GL_INVALID_ENUM is generated if pname is  GL_CONVOLUTION_BORDER_MODE and params is not one of  GL_REDUCE,  GL_CONSTANT_BORDER, or  GL_REPLICATE_BORDER.

 GL_INVALID_OPERATION is generated if  glConvolutionParameter is executed between the execution of  glBegin and the corresponding execution of  glEnd.

ASSOCIATED GETS

 glGetConvolutionParameter

SEE ALSO

 glConvolutionFilter1D(3G),  glConvolutionFilter2D(3G),  glSeparableFilter2D(3G),  glGetConvolutionParameter(3G)
Jump to page    or go to Top of page |  Section 3G |  Main Index.


GLCONVOLUTIONPARAMETER (3G)
Generated by manServer 1.07 from /usr/X11R6/man/man3/glConvolutionParameter.3x.gz using man macros with eqn support.