home *** CD-ROM | disk | FTP | other *** search
/ Hackers Magazine 57 / CdHackersMagazineNr57.iso / Software / Multimedia / k3d-setup-0.7.11.0.exe / lib / site-packages / OpenGL / raw / GL / EXT / vertex_array.py < prev    next >
Encoding:
Python Source  |  2008-12-07  |  8.4 KB  |  165 lines

  1. '''OpenGL extension EXT.vertex_array
  2.  
  3. Overview (from the spec)
  4.     
  5.     This extension adds the ability to specify multiple geometric primitives
  6.     with very few subroutine calls.  Instead of calling an OpenGL procedure
  7.     to pass each individual vertex, normal, or color, separate arrays
  8.     of vertexes, normals, and colors are prespecified, and are used to
  9.     define a sequence of primitives (all of the same type) when a single
  10.     call is made to DrawArraysEXT.  A stride mechanism is provided so that
  11.     an application can choose to keep all vertex data staggered in a
  12.     single array, or sparsely in separate arrays.  Single-array storage
  13.     may optimize performance on some implementations.
  14.     
  15.     This extension also supports the rendering of individual array elements,
  16.     each specified as an index into the enabled arrays.
  17.  
  18. The official definition of this extension is available here:
  19.     http://oss.sgi.com/projects/ogl-sample/registry/EXT/vertex_array.txt
  20.  
  21. Automatically generated by the get_gl_extensions script, do not edit!
  22. '''
  23. from OpenGL import platform, constants, constant, arrays
  24. from OpenGL import extensions
  25. from OpenGL.GL import glget
  26. import ctypes
  27. EXTENSION_NAME = 'GL_EXT_vertex_array'
  28. GL_VERTEX_ARRAY_EXT = constant.Constant( 'GL_VERTEX_ARRAY_EXT', 0x8074 )
  29. GL_NORMAL_ARRAY_EXT = constant.Constant( 'GL_NORMAL_ARRAY_EXT', 0x8075 )
  30. GL_COLOR_ARRAY_EXT = constant.Constant( 'GL_COLOR_ARRAY_EXT', 0x8076 )
  31. GL_INDEX_ARRAY_EXT = constant.Constant( 'GL_INDEX_ARRAY_EXT', 0x8077 )
  32. GL_TEXTURE_COORD_ARRAY_EXT = constant.Constant( 'GL_TEXTURE_COORD_ARRAY_EXT', 0x8078 )
  33. GL_EDGE_FLAG_ARRAY_EXT = constant.Constant( 'GL_EDGE_FLAG_ARRAY_EXT', 0x8079 )
  34. GL_VERTEX_ARRAY_SIZE_EXT = constant.Constant( 'GL_VERTEX_ARRAY_SIZE_EXT', 0x807A )
  35. glget.addGLGetConstant( GL_VERTEX_ARRAY_SIZE_EXT, (1,) )
  36. GL_VERTEX_ARRAY_TYPE_EXT = constant.Constant( 'GL_VERTEX_ARRAY_TYPE_EXT', 0x807B )
  37. glget.addGLGetConstant( GL_VERTEX_ARRAY_TYPE_EXT, (1,) )
  38. GL_VERTEX_ARRAY_STRIDE_EXT = constant.Constant( 'GL_VERTEX_ARRAY_STRIDE_EXT', 0x807C )
  39. glget.addGLGetConstant( GL_VERTEX_ARRAY_STRIDE_EXT, (1,) )
  40. GL_VERTEX_ARRAY_COUNT_EXT = constant.Constant( 'GL_VERTEX_ARRAY_COUNT_EXT', 0x807D )
  41. glget.addGLGetConstant( GL_VERTEX_ARRAY_COUNT_EXT, (1,) )
  42. GL_NORMAL_ARRAY_TYPE_EXT = constant.Constant( 'GL_NORMAL_ARRAY_TYPE_EXT', 0x807E )
  43. glget.addGLGetConstant( GL_NORMAL_ARRAY_TYPE_EXT, (1,) )
  44. GL_NORMAL_ARRAY_STRIDE_EXT = constant.Constant( 'GL_NORMAL_ARRAY_STRIDE_EXT', 0x807F )
  45. glget.addGLGetConstant( GL_NORMAL_ARRAY_STRIDE_EXT, (1,) )
  46. GL_NORMAL_ARRAY_COUNT_EXT = constant.Constant( 'GL_NORMAL_ARRAY_COUNT_EXT', 0x8080 )
  47. glget.addGLGetConstant( GL_NORMAL_ARRAY_COUNT_EXT, (1,) )
  48. GL_COLOR_ARRAY_SIZE_EXT = constant.Constant( 'GL_COLOR_ARRAY_SIZE_EXT', 0x8081 )
  49. glget.addGLGetConstant( GL_COLOR_ARRAY_SIZE_EXT, (1,) )
  50. GL_COLOR_ARRAY_TYPE_EXT = constant.Constant( 'GL_COLOR_ARRAY_TYPE_EXT', 0x8082 )
  51. glget.addGLGetConstant( GL_COLOR_ARRAY_TYPE_EXT, (1,) )
  52. GL_COLOR_ARRAY_STRIDE_EXT = constant.Constant( 'GL_COLOR_ARRAY_STRIDE_EXT', 0x8083 )
  53. glget.addGLGetConstant( GL_COLOR_ARRAY_STRIDE_EXT, (1,) )
  54. GL_COLOR_ARRAY_COUNT_EXT = constant.Constant( 'GL_COLOR_ARRAY_COUNT_EXT', 0x8084 )
  55. glget.addGLGetConstant( GL_COLOR_ARRAY_COUNT_EXT, (1,) )
  56. GL_INDEX_ARRAY_TYPE_EXT = constant.Constant( 'GL_INDEX_ARRAY_TYPE_EXT', 0x8085 )
  57. glget.addGLGetConstant( GL_INDEX_ARRAY_TYPE_EXT, (1,) )
  58. GL_INDEX_ARRAY_STRIDE_EXT = constant.Constant( 'GL_INDEX_ARRAY_STRIDE_EXT', 0x8086 )
  59. glget.addGLGetConstant( GL_INDEX_ARRAY_STRIDE_EXT, (1,) )
  60. GL_INDEX_ARRAY_COUNT_EXT = constant.Constant( 'GL_INDEX_ARRAY_COUNT_EXT', 0x8087 )
  61. glget.addGLGetConstant( GL_INDEX_ARRAY_COUNT_EXT, (1,) )
  62. GL_TEXTURE_COORD_ARRAY_SIZE_EXT = constant.Constant( 'GL_TEXTURE_COORD_ARRAY_SIZE_EXT', 0x8088 )
  63. glget.addGLGetConstant( GL_TEXTURE_COORD_ARRAY_SIZE_EXT, (1,) )
  64. GL_TEXTURE_COORD_ARRAY_TYPE_EXT = constant.Constant( 'GL_TEXTURE_COORD_ARRAY_TYPE_EXT', 0x8089 )
  65. glget.addGLGetConstant( GL_TEXTURE_COORD_ARRAY_TYPE_EXT, (1,) )
  66. GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = constant.Constant( 'GL_TEXTURE_COORD_ARRAY_STRIDE_EXT', 0x808A )
  67. glget.addGLGetConstant( GL_TEXTURE_COORD_ARRAY_STRIDE_EXT, (1,) )
  68. GL_TEXTURE_COORD_ARRAY_COUNT_EXT = constant.Constant( 'GL_TEXTURE_COORD_ARRAY_COUNT_EXT', 0x808B )
  69. glget.addGLGetConstant( GL_TEXTURE_COORD_ARRAY_COUNT_EXT, (1,) )
  70. GL_EDGE_FLAG_ARRAY_STRIDE_EXT = constant.Constant( 'GL_EDGE_FLAG_ARRAY_STRIDE_EXT', 0x808C )
  71. glget.addGLGetConstant( GL_EDGE_FLAG_ARRAY_STRIDE_EXT, (1,) )
  72. GL_EDGE_FLAG_ARRAY_COUNT_EXT = constant.Constant( 'GL_EDGE_FLAG_ARRAY_COUNT_EXT', 0x808D )
  73. glget.addGLGetConstant( GL_EDGE_FLAG_ARRAY_COUNT_EXT, (1,) )
  74. GL_VERTEX_ARRAY_POINTER_EXT = constant.Constant( 'GL_VERTEX_ARRAY_POINTER_EXT', 0x808E )
  75. GL_NORMAL_ARRAY_POINTER_EXT = constant.Constant( 'GL_NORMAL_ARRAY_POINTER_EXT', 0x808F )
  76. GL_COLOR_ARRAY_POINTER_EXT = constant.Constant( 'GL_COLOR_ARRAY_POINTER_EXT', 0x8090 )
  77. GL_INDEX_ARRAY_POINTER_EXT = constant.Constant( 'GL_INDEX_ARRAY_POINTER_EXT', 0x8091 )
  78. GL_TEXTURE_COORD_ARRAY_POINTER_EXT = constant.Constant( 'GL_TEXTURE_COORD_ARRAY_POINTER_EXT', 0x8092 )
  79. GL_EDGE_FLAG_ARRAY_POINTER_EXT = constant.Constant( 'GL_EDGE_FLAG_ARRAY_POINTER_EXT', 0x8093 )
  80. glArrayElementEXT = platform.createExtensionFunction( 
  81.     'glArrayElementEXT', dll=platform.GL,
  82.     extension=EXTENSION_NAME,
  83.     resultType=None, 
  84.     argTypes=(constants.GLint,),
  85.     doc = 'glArrayElementEXT( GLint(i) ) -> None',
  86.     argNames = ('i',),
  87. )
  88.  
  89. glColorPointerEXT = platform.createExtensionFunction( 
  90.     'glColorPointerEXT', dll=platform.GL,
  91.     extension=EXTENSION_NAME,
  92.     resultType=None, 
  93.     argTypes=(constants.GLint, constants.GLenum, constants.GLsizei, constants.GLsizei, ctypes.c_void_p,),
  94.     doc = 'glColorPointerEXT( GLint(size), GLenum(type), GLsizei(stride), GLsizei(count), c_void_p(pointer) ) -> None',
  95.     argNames = ('size', 'type', 'stride', 'count', 'pointer',),
  96. )
  97.  
  98. glDrawArraysEXT = platform.createExtensionFunction( 
  99.     'glDrawArraysEXT', dll=platform.GL,
  100.     extension=EXTENSION_NAME,
  101.     resultType=None, 
  102.     argTypes=(constants.GLenum, constants.GLint, constants.GLsizei,),
  103.     doc = 'glDrawArraysEXT( GLenum(mode), GLint(first), GLsizei(count) ) -> None',
  104.     argNames = ('mode', 'first', 'count',),
  105. )
  106.  
  107. glEdgeFlagPointerEXT = platform.createExtensionFunction( 
  108.     'glEdgeFlagPointerEXT', dll=platform.GL,
  109.     extension=EXTENSION_NAME,
  110.     resultType=None, 
  111.     argTypes=(constants.GLsizei, constants.GLsizei, ctypes.POINTER(constants.GLboolean),),
  112.     doc = 'glEdgeFlagPointerEXT( GLsizei(stride), GLsizei(count), POINTER(constants.GLboolean)(pointer) ) -> None',
  113.     argNames = ('stride', 'count', 'pointer',),
  114. )
  115.  
  116. glGetPointervEXT = platform.createExtensionFunction( 
  117.     'glGetPointervEXT', dll=platform.GL,
  118.     extension=EXTENSION_NAME,
  119.     resultType=None, 
  120.     argTypes=(constants.GLenum, ctypes.POINTER(ctypes.c_void_p),),
  121.     doc = 'glGetPointervEXT( GLenum(pname), POINTER(ctypes.c_void_p)(params) ) -> None',
  122.     argNames = ('pname', 'params',),
  123. )
  124.  
  125. glIndexPointerEXT = platform.createExtensionFunction( 
  126.     'glIndexPointerEXT', dll=platform.GL,
  127.     extension=EXTENSION_NAME,
  128.     resultType=None, 
  129.     argTypes=(constants.GLenum, constants.GLsizei, constants.GLsizei, ctypes.c_void_p,),
  130.     doc = 'glIndexPointerEXT( GLenum(type), GLsizei(stride), GLsizei(count), c_void_p(pointer) ) -> None',
  131.     argNames = ('type', 'stride', 'count', 'pointer',),
  132. )
  133.  
  134. glNormalPointerEXT = platform.createExtensionFunction( 
  135.     'glNormalPointerEXT', dll=platform.GL,
  136.     extension=EXTENSION_NAME,
  137.     resultType=None, 
  138.     argTypes=(constants.GLenum, constants.GLsizei, constants.GLsizei, ctypes.c_void_p,),
  139.     doc = 'glNormalPointerEXT( GLenum(type), GLsizei(stride), GLsizei(count), c_void_p(pointer) ) -> None',
  140.     argNames = ('type', 'stride', 'count', 'pointer',),
  141. )
  142.  
  143. glTexCoordPointerEXT = platform.createExtensionFunction( 
  144.     'glTexCoordPointerEXT', dll=platform.GL,
  145.     extension=EXTENSION_NAME,
  146.     resultType=None, 
  147.     argTypes=(constants.GLint, constants.GLenum, constants.GLsizei, constants.GLsizei, ctypes.c_void_p,),
  148.     doc = 'glTexCoordPointerEXT( GLint(size), GLenum(type), GLsizei(stride), GLsizei(count), c_void_p(pointer) ) -> None',
  149.     argNames = ('size', 'type', 'stride', 'count', 'pointer',),
  150. )
  151.  
  152. glVertexPointerEXT = platform.createExtensionFunction( 
  153.     'glVertexPointerEXT', dll=platform.GL,
  154.     extension=EXTENSION_NAME,
  155.     resultType=None, 
  156.     argTypes=(constants.GLint, constants.GLenum, constants.GLsizei, constants.GLsizei, ctypes.c_void_p,),
  157.     doc = 'glVertexPointerEXT( GLint(size), GLenum(type), GLsizei(stride), GLsizei(count), c_void_p(pointer) ) -> None',
  158.     argNames = ('size', 'type', 'stride', 'count', 'pointer',),
  159. )
  160.  
  161.  
  162. def glInitVertexArrayEXT():
  163.     '''Return boolean indicating whether this extension is available'''
  164.     return extensions.hasGLExtension( EXTENSION_NAME )
  165.