1 2Name 3 4 SUN_convolution_border_modes 5 6Name Strings 7 8 GL_SUN_convolution_border_modes 9 10Contact 11 12 Ron Bielaski, Sun (Ron.Bielaski 'at' eng.sun.com) 13 Jack Middleton, Sun (Jack.Middleton 'at' eng.sun.com) 14 15Status 16 17 Shipping 18 19Version 20 21 $Date: 1999/12/28 01:40:37 $ $Revision: 1.3 $ 22 SUN Date: 1999/06/26 05:05:47 Revision: 1.3 23 24Number 25 26 182 27 28Dependencies 29 30 EXT_convolution is required 31 32Overview 33 34 This extension provides an additional border mode for the 35 EXT_convolution extension. 36 37New Procedures and Functions 38 39 None 40 41New Tokens 42 43 Accepted by the <param> parameter of ConvolutionParameteriEXT, 44 and ConvolutionParameterfEXT, and by the <params> parameter of 45 ConvolutionParameterivEXT and ConvolutionParameterfvEXT, when the 46 <pname> parameter is CONVOLUTION_BORDER_MODE_EXT: 47 48 WRAP_BORDER_SUN 0x81D4 49 50Additions to Chapter 2 of the 1.2 Specification (OpenGL Operation) 51 52 None 53 54Additions to Chapter 3 of the 1.2 Specification (Rasterization) 55 56 The description of the convolution border mode is replaced with 57 the following: 58 59 The convolution border mode for a specific convolution filter is 60 specified using ConvolutionParameteriEXT with the <target> 61 parameter set to the name of the filter, the <pname> parameter 62 set to CONVOLUTION_BORDER_MODE_EXT, and <param> set to one of 63 REDUCE_EXT, IGNORE_BORDER_HP, CONSTANT_BORDER_HP, 64 WRAP_BORDER_SUN, or REPLICATE_BORDER_HP. 65 66 If the convolution border mode is WRAP_BORDER_SUN, the output image 67 has the same dimensions as the source image, and the source image is 68 assumed to be continuously wrapped in both x and y directions. 69 Therefore, source image pixels in the Cw columns on the right edge 70 are used in the convolution computation for the Cw columns on the 71 left edge of the image, and vice versa. Similarly, source image 72 pixels in the Ch rows on the top of the image are used in the 73 convolution computation for the Ch rows on the bottom of the 74 image and vice versa. 75 76Additions to Chapter 4 of the 1.2 Specification (Per-Fragment Operations 77and the Frame buffer) 78 79 None 80 81Additions to Chapter 5 of the 1.2 Specification (Special Functions) 82 83 None 84 85Additions to Chapter 6 of the 1.2 Specification (State and State Requests) 86 87 None 88 89Additions to the GLX / WGL / AGL Specifications 90 91 None 92 93GLX Protocol 94 95 No new protocol is needed. 96 97Dependencies on EXT_convolution 98 99 EXT_convolution is required. This extension adds capability to 100 the convolution operations defined in that extension. 101 102Errors 103 104 INVALID_ENUM is generated if ConvolutionParameterivEXT or 105 ConvolutionParameterfvEXT parameter <pname> is not 106 CONVOLUTION_FILTER_SCALE_EXT, CONVOLUTION_FILTER_BIAS_EXT, 107 CONVOLUTION_BORDER_MODE_EXT, or CONVOLUTION_BORDER_COLOR_HP. 108 109 INVALID_ENUM is generated if ConvolutionParameteriEXT, 110 ConvolutionParameterfEXT, ConvolutionParameterivEXT, or 111 ConvolutionParameterfvEXT parameter <pname> is 112 CONVOLUTION_BORDER_MODE_EXT and parameter <params> is 113 not one of REDUCE_EXT, IGNORE_BORDER_HP, CONSTANT_BORDER_HP, 114 WRAP_BORDER_SUN, or REPLICATE_BORDER_HP. 115 116 INVALID_ENUM is generated if GetConvolutionParameterivEXT or 117 GetConvolutionParameterfvEXT parameter <pname> is not 118 CONVOLUTION_FILTER_SCALE_EXT, CONVOLUTION_FILTER_BIAS_EXT, 119 CONVOLUTION_BORDER_MODE_EXT, CONVOLUTION_FORMAT_EXT, 120 CONVOLUTION_WIDTH_EXT, CONVOLUTION_HEIGHT_EXT, 121 MAX_CONVOLUTION_WIDTH_EXT, MAX_CONVOLUTION_HEIGHT_EXT, 122 or CONVOLUTION_BORDER_COLOR_HP. 123 124New State 125 126 None 127 128New Implementation Dependent State 129 130 None 131Revision History 132 133 6/24/99 - Added fields from the new extension template. 134 135