| | '''OpenGL extension EXT.cmyka |
| | |
| | This module customises the behaviour of the |
| | OpenGL.raw.GL.EXT.cmyka to provide a more |
| | Python-friendly API |
| | |
| | Overview (from the spec) |
| | |
| | This extension provides a simple method for OpenGL to read and store |
| | images whose pixels have CMYK or CMYKA formats. The algorithms used to |
| | convert to RGBA from CMYKA and to convert back from RGBA to CMYKA are of |
| | the "black-box" nature, meaning that the application has little control |
| | over how the conversion is done. Also, this black-box mechanism is |
| | available only for transfers to or from memory, not for internal copies |
| | of pixel data (such as invoked by CopyPixels, CopyTexImage1D, etc.) |
| | However, the defined mechanism nicely handles 5-component CMYKA images, |
| | and it is very easy to use. |
| | |
| | A more configurable and potentially higher quality color conversion can |
| | be implemented using the color tables, the color matrix, and possibly 3D |
| | and 4D texture lookup. Such a color conversion also applies to copied |
| | pixel data. |
| | |
| | The official definition of this extension is available here: |
| | http://www.opengl.org/registry/specs/EXT/cmyka.txt |
| | ''' |
| | from OpenGL import platform, constant, arrays |
| | from OpenGL import extensions, wrapper |
| | import ctypes |
| | from OpenGL.raw.GL import _types, _glgets |
| | from OpenGL.raw.GL.EXT.cmyka import * |
| | from OpenGL.raw.GL.EXT.cmyka import _EXTENSION_NAME |
| |
|
| | def glInitCmykaEXT(): |
| | '''Return boolean indicating whether this extension is available''' |
| | from OpenGL import extensions |
| | return extensions.hasGLExtension( _EXTENSION_NAME ) |
| |
|
| |
|
| | |
| | from OpenGL import images as _i |
| |
|
| | _i.COMPONENT_COUNTS[ GL_CMYK_EXT ] = 4 |
| | _i.COMPONENT_COUNTS[ GL_CMYKA_EXT ] = 5 |
| |
|