PDL::Graphics::OpenGL.3pm

Langue: en

Version: 2009-02-24 (fedora - 05/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

PDL::Graphics::OpenGL -- a PDL interface to the OpenGL graphics library. PDL::Graphics::OpenGLOO - an Object Oriented interface to the interface.

DESCRIPTION

This package implements an interface to various OpenGL or OpenGL emulator libraries. Most of the interface is generated at PDL compile time by the script opengl.pd which runs the c preprocessor on various OpenGL include files to determine the correct C prototypes for each configuration. The object oriented interface defines an Object which contains the Display, Window and Context properties of the defined OpenGL device. Any OpenGL function called from the OO interface will recieve these fields from the object, they should not be passed explicitly.

This package is primarily intended for internal use by the PDL::Graphics::TriD package, but should also be usable in its own right.

FUNCTIONS


new($class,$options)

Returns a new OpenGL object with attributes specified in the options field. These attributes are:

   x,y - the position of the upper left corner of the window (0,0)
   width,height - the width and height of the window in pixels (500,500)
   parent - the parent under which the new window should be opened (root)
   mask - the user interface mask (StructureNotifyMask)
   attributes - attributes to pass to glXChooseVisual
 
 

default_options

default options for object oriented methods

XPending()

OO interface to XPending

XResizeWindow(x,y)

OO interface to XResizeWindow

glpXNextEvent()

OO interface to glpXNextEvent

glpRasterFont()

OO interface to the glpRasterFont function

AUTOLOAD

If the function is not prototyped in OO we assume there is no explicit mention of the three identifying parameters (Display, Window, Context) and try to load the OpenGL function.

glXCreateContext

OO interface to the glXCreateContext function

glXDestroyContext

OO interface to the glXDestroyContext function

glXMakeCurrent

OO interface to the glXMakeCurrent function

glXCopyContext

OO interface to the glXCopyContext function

glXSwapBuffers

OO interface to the glXSwapBuffers function

glXCreateGLXPixmap

OO interface to the glXCreateGLXPixmap function

glXDestroyGLXPixmap

OO interface to the glXDestroyGLXPixmap function

glXQueryExtension

OO interface to the glXQueryExtension function

glXQueryVersion

OO interface to the glXQueryVersion function

glXIsDirect

OO interface to the glXIsDirect function

glXGetConfig

OO interface to the glXGetConfig function

glXGetFBConfigAttrib

OO interface to the glXGetFBConfigAttrib function

glXCreateWindow

OO interface to the glXCreateWindow function

glXDestroyWindow

OO interface to the glXDestroyWindow function

glXCreatePixmap

OO interface to the glXCreatePixmap function

glXDestroyPixmap

OO interface to the glXDestroyPixmap function

glXCreatePbuffer

OO interface to the glXCreatePbuffer function

glXDestroyPbuffer

OO interface to the glXDestroyPbuffer function

glXQueryDrawable

OO interface to the glXQueryDrawable function

glXCreateNewContext

OO interface to the glXCreateNewContext function

glXMakeContextCurrent

OO interface to the glXMakeContextCurrent function

glXQueryContext

OO interface to the glXQueryContext function

glXSelectEvent

OO interface to the glXSelectEvent function

glXGetSelectedEvent

OO interface to the glXGetSelectedEvent function

glXFreeMemoryMESA

OO interface to the glXFreeMemoryMESA function

glXGetMemoryOffsetMESA

OO interface to the glXGetMemoryOffsetMESA function

glXBindTexImageARB

OO interface to the glXBindTexImageARB function

glXReleaseTexImageARB

OO interface to the glXReleaseTexImageARB function

glXDrawableAttribARB

OO interface to the glXDrawableAttribARB function

glXGetFrameUsageMESA

OO interface to the glXGetFrameUsageMESA function

glXBeginFrameTrackingMESA

OO interface to the glXBeginFrameTrackingMESA function

glXEndFrameTrackingMESA

OO interface to the glXEndFrameTrackingMESA function

glXQueryFrameTrackingMESA

OO interface to the glXQueryFrameTrackingMESA function

OpenGL Interface Functions

The following is a list of OpenGL functions for which an interface was created. Please refer to the OpenGL documentation for descriptions.
*
glClearIndex
*
glClearColor
*
glClear
*
glIndexMask
*
glColorMask
*
glAlphaFunc
*
glBlendFunc
*
glLogicOp
*
glCullFace
*
glFrontFace
*
glPointSize
*
glLineWidth
*
glLineStipple
*
glPolygonMode
*
glPolygonOffset
*
glPolygonStipple
*
glGetPolygonStipple
*
glEdgeFlag
*
glEdgeFlagv
*
glScissor
*
glClipPlane
*
glGetClipPlane
*
glDrawBuffer
*
glReadBuffer
*
glEnable
*
glDisable
*
glIsEnabled
*
glEnableClientState
*
glDisableClientState
*
glGetBooleanv
*
glGetDoublev
*
glGetFloatv
*
glGetIntegerv
*
glPushAttrib
*
glPopAttrib
*
glPushClientAttrib
*
glPopClientAttrib
*
glRenderMode
*
glGetError
*
glFinish
*
glFlush
*
glHint
*
glClearDepth
*
glDepthFunc
*
glDepthMask
*
glDepthRange
*
glClearAccum
*
glAccum
*
glMatrixMode
*
glOrtho
*
glFrustum
*
glViewport
*
glPushMatrix
*
glPopMatrix
*
glLoadIdentity
*
glLoadMatrixd
*
glLoadMatrixf
*
glMultMatrixd
*
glMultMatrixf
*
glRotated
*
glRotatef
*
glScaled
*
glScalef
*
glTranslated
*
glTranslatef
*
glIsList
*
glDeleteLists
*
glGenLists
*
glNewList
*
glEndList
*
glCallList
*
glCallLists
*
glListBase
*
glBegin
*
glEnd
*
glVertex2d
*
glVertex2f
*
glVertex2i
*
glVertex2s
*
glVertex3d
*
glVertex3f
*
glVertex3i
*
glVertex3s
*
glVertex4d
*
glVertex4f
*
glVertex4i
*
glVertex4s
*
glVertex2dv
*
glVertex2fv
*
glVertex2iv
*
glVertex2sv
*
glVertex3dv
*
glVertex3fv
*
glVertex3iv
*
glVertex3sv
*
glVertex4dv
*
glVertex4fv
*
glVertex4iv
*
glVertex4sv
*
glNormal3b
*
glNormal3d
*
glNormal3f
*
glNormal3i
*
glNormal3s
*
glNormal3bv
*
glNormal3dv
*
glNormal3fv
*
glNormal3iv
*
glNormal3sv
*
glIndexd
*
glIndexf
*
glIndexi
*
glIndexs
*
glIndexub
*
glIndexdv
*
glIndexfv
*
glIndexiv
*
glIndexsv
*
glIndexubv
*
glColor3b
*
glColor3d
*
glColor3f
*
glColor3i
*
glColor3s
*
glColor3ub
*
glColor3ui
*
glColor3us
*
glColor4b
*
glColor4d
*
glColor4f
*
glColor4i
*
glColor4s
*
glColor4ub
*
glColor4ui
*
glColor4us
*
glColor3bv
*
glColor3dv
*
glColor3fv
*
glColor3iv
*
glColor3sv
*
glColor3ubv
*
glColor3uiv
*
glColor3usv
*
glColor4bv
*
glColor4dv
*
glColor4fv
*
glColor4iv
*
glColor4sv
*
glColor4ubv
*
glColor4uiv
*
glColor4usv
*
glTexCoord1d
*
glTexCoord1f
*
glTexCoord1i
*
glTexCoord1s
*
glTexCoord2d
*
glTexCoord2f
*
glTexCoord2i
*
glTexCoord2s
*
glTexCoord3d
*
glTexCoord3f
*
glTexCoord3i
*
glTexCoord3s
*
glTexCoord4d
*
glTexCoord4f
*
glTexCoord4i
*
glTexCoord4s
*
glTexCoord1dv
*
glTexCoord1fv
*
glTexCoord1iv
*
glTexCoord1sv
*
glTexCoord2dv
*
glTexCoord2fv
*
glTexCoord2iv
*
glTexCoord2sv
*
glTexCoord3dv
*
glTexCoord3fv
*
glTexCoord3iv
*
glTexCoord3sv
*
glTexCoord4dv
*
glTexCoord4fv
*
glTexCoord4iv
*
glTexCoord4sv
*
glRasterPos2d
*
glRasterPos2f
*
glRasterPos2i
*
glRasterPos2s
*
glRasterPos3d
*
glRasterPos3f
*
glRasterPos3i
*
glRasterPos3s
*
glRasterPos4d
*
glRasterPos4f
*
glRasterPos4i
*
glRasterPos4s
*
glRasterPos2dv
*
glRasterPos2fv
*
glRasterPos2iv
*
glRasterPos2sv
*
glRasterPos3dv
*
glRasterPos3fv
*
glRasterPos3iv
*
glRasterPos3sv
*
glRasterPos4dv
*
glRasterPos4fv
*
glRasterPos4iv
*
glRasterPos4sv
*
glRectd
*
glRectf
*
glRecti
*
glRects
*
glRectdv
*
glRectfv
*
glRectiv
*
glRectsv
*
glVertexPointer
*
glNormalPointer
*
glColorPointer
*
glIndexPointer
*
glTexCoordPointer
*
glEdgeFlagPointer
*
glArrayElement
*
glDrawArrays
*
glDrawElements
*
glInterleavedArrays
*
glShadeModel
*
glLightf
*
glLighti
*
glLightfv
*
glLightiv
*
glGetLightfv
*
glGetLightiv
*
glLightModelf
*
glLightModeli
*
glLightModelfv
*
glLightModeliv
*
glMaterialf
*
glMateriali
*
glMaterialfv
*
glMaterialiv
*
glGetMaterialfv
*
glGetMaterialiv
*
glColorMaterial
*
glPixelZoom
*
glPixelStoref
*
glPixelStorei
*
glPixelTransferf
*
glPixelTransferi
*
glPixelMapfv
*
glPixelMapuiv
*
glPixelMapusv
*
glGetPixelMapfv
*
glGetPixelMapuiv
*
glGetPixelMapusv
*
glBitmap
*
glReadPixels
*
glDrawPixels
*
glCopyPixels
*
glStencilFunc
*
glStencilMask
*
glStencilOp
*
glClearStencil
*
glTexGend
*
glTexGenf
*
glTexGeni
*
glTexGendv
*
glTexGenfv
*
glTexGeniv
*
glGetTexGendv
*
glGetTexGenfv
*
glGetTexGeniv
*
glTexEnvf
*
glTexEnvi
*
glTexEnvfv
*
glTexEnviv
*
glGetTexEnvfv
*
glGetTexEnviv
*
glTexParameterf
*
glTexParameteri
*
glTexParameterfv
*
glTexParameteriv
*
glGetTexParameterfv
*
glGetTexParameteriv
*
glGetTexLevelParameterfv
*
glGetTexLevelParameteriv
*
glTexImage1D
*
glTexImage2D
*
glGetTexImage
*
glGenTextures
*
glDeleteTextures
*
glBindTexture
*
glPrioritizeTextures
*
glAreTexturesResident
*
glIsTexture
*
glTexSubImage1D
*
glTexSubImage2D
*
glCopyTexImage1D
*
glCopyTexImage2D
*
glCopyTexSubImage1D
*
glCopyTexSubImage2D
*
glMap1d
*
glMap1f
*
glMap2d
*
glMap2f
*
glGetMapdv
*
glGetMapfv
*
glGetMapiv
*
glEvalCoord1d
*
glEvalCoord1f
*
glEvalCoord1dv
*
glEvalCoord1fv
*
glEvalCoord2d
*
glEvalCoord2f
*
glEvalCoord2dv
*
glEvalCoord2fv
*
glMapGrid1d
*
glMapGrid1f
*
glMapGrid2d
*
glMapGrid2f
*
glEvalPoint1
*
glEvalPoint2
*
glEvalMesh1
*
glEvalMesh2
*
glFogf
*
glFogi
*
glFogfv
*
glFogiv
*
glFeedbackBuffer
*
glPassThrough
*
glSelectBuffer
*
glInitNames
*
glLoadName
*
glPushName
*
glPopName
*
glDrawRangeElements
*
glTexImage3D
*
glTexSubImage3D
*
glCopyTexSubImage3D
*
glColorTable
*
glColorSubTable
*
glColorTableParameteriv
*
glColorTableParameterfv
*
glCopyColorSubTable
*
glCopyColorTable
*
glGetColorTable
*
glGetColorTableParameterfv
*
glGetColorTableParameteriv
*
glBlendEquation
*
glBlendColor
*
glHistogram
*
glResetHistogram
*
glGetHistogram
*
glGetHistogramParameterfv
*
glGetHistogramParameteriv
*
glMinmax
*
glResetMinmax
*
glGetMinmax
*
glGetMinmaxParameterfv
*
glGetMinmaxParameteriv
*
glConvolutionFilter1D
*
glConvolutionFilter2D
*
glConvolutionParameterf
*
glConvolutionParameterfv
*
glConvolutionParameteri
*
glConvolutionParameteriv
*
glCopyConvolutionFilter1D
*
glCopyConvolutionFilter2D
*
glGetConvolutionFilter
*
glGetConvolutionParameterfv
*
glGetConvolutionParameteriv
*
glSeparableFilter2D
*
glGetSeparableFilter
*
glActiveTexture
*
glClientActiveTexture
*
glCompressedTexImage1D
*
glCompressedTexImage2D
*
glCompressedTexImage3D
*
glCompressedTexSubImage1D
*
glCompressedTexSubImage2D
*
glCompressedTexSubImage3D
*
glGetCompressedTexImage
*
glMultiTexCoord1d
*
glMultiTexCoord1dv
*
glMultiTexCoord1f
*
glMultiTexCoord1fv
*
glMultiTexCoord1i
*
glMultiTexCoord1iv
*
glMultiTexCoord1s
*
glMultiTexCoord1sv
*
glMultiTexCoord2d
*
glMultiTexCoord2dv
*
glMultiTexCoord2f
*
glMultiTexCoord2fv
*
glMultiTexCoord2i
*
glMultiTexCoord2iv
*
glMultiTexCoord2s
*
glMultiTexCoord2sv
*
glMultiTexCoord3d
*
glMultiTexCoord3dv
*
glMultiTexCoord3f
*
glMultiTexCoord3fv
*
glMultiTexCoord3i
*
glMultiTexCoord3iv
*
glMultiTexCoord3s
*
glMultiTexCoord3sv
*
glMultiTexCoord4d
*
glMultiTexCoord4dv
*
glMultiTexCoord4f
*
glMultiTexCoord4fv
*
glMultiTexCoord4i
*
glMultiTexCoord4iv
*
glMultiTexCoord4s
*
glMultiTexCoord4sv
*
glLoadTransposeMatrixd
*
glLoadTransposeMatrixf
*
glMultTransposeMatrixd
*
glMultTransposeMatrixf
*
glSampleCoverage
*
glActiveTextureARB
*
glClientActiveTextureARB
*
glMultiTexCoord1dARB
*
glMultiTexCoord1dvARB
*
glMultiTexCoord1fARB
*
glMultiTexCoord1fvARB
*
glMultiTexCoord1iARB
*
glMultiTexCoord1ivARB
*
glMultiTexCoord1sARB
*
glMultiTexCoord1svARB
*
glMultiTexCoord2dARB
*
glMultiTexCoord2dvARB
*
glMultiTexCoord2fARB
*
glMultiTexCoord2fvARB
*
glMultiTexCoord2iARB
*
glMultiTexCoord2ivARB
*
glMultiTexCoord2sARB
*
glMultiTexCoord2svARB
*
glMultiTexCoord3dARB
*
glMultiTexCoord3dvARB
*
glMultiTexCoord3fARB
*
glMultiTexCoord3fvARB
*
glMultiTexCoord3iARB
*
glMultiTexCoord3ivARB
*
glMultiTexCoord3sARB
*
glMultiTexCoord3svARB
*
glMultiTexCoord4dARB
*
glMultiTexCoord4dvARB
*
glMultiTexCoord4fARB
*
glMultiTexCoord4fvARB
*
glMultiTexCoord4iARB
*
glMultiTexCoord4ivARB
*
glMultiTexCoord4sARB
*
glMultiTexCoord4svARB
*
glCreateDebugObjectMESA
*
glClearDebugLogMESA
*
glGetDebugLogMESA
*
glGetDebugLogLengthMESA
*
glBlendEquationSeparateATI
*
glXCreateContext
*
glXDestroyContext
*
glXMakeCurrent
*
glXCopyContext
*
glXSwapBuffers
*
glXCreateGLXPixmap
*
glXDestroyGLXPixmap
*
glXQueryExtension
*
glXQueryVersion
*
glXIsDirect
*
glXGetConfig
*
glXGetCurrentContext
*
glXGetCurrentDrawable
*
glXWaitGL
*
glXWaitX
*
glXUseXFont
*
glXGetFBConfigAttrib
*
glXCreateWindow
*
glXDestroyWindow
*
glXCreatePixmap
*
glXDestroyPixmap
*
glXCreatePbuffer
*
glXDestroyPbuffer
*
glXQueryDrawable
*
glXCreateNewContext
*
glXMakeContextCurrent
*
glXGetCurrentReadDrawable
*
glXQueryContext
*
glXSelectEvent
*
glXGetSelectedEvent
*
glXGetProcAddressARB
*
glXFreeMemoryNV
*
glXFreeMemoryMESA
*
glXGetMemoryOffsetMESA
*
glXBindTexImageARB
*
glXReleaseTexImageARB
*
glXDrawableAttribARB
*
glXGetFrameUsageMESA
*
glXBeginFrameTrackingMESA
*
glXEndFrameTrackingMESA
*
glXQueryFrameTrackingMESA
*
glXSwapIntervalMESA
*
glXGetSwapIntervalMESA
*
gluBeginCurve
*
gluBeginPolygon
*
gluBeginSurface
*
gluBeginTrim
*
gluBuild1DMipmapLevels
*
gluBuild1DMipmaps
*
gluBuild2DMipmapLevels
*
gluBuild2DMipmaps
*
gluBuild3DMipmapLevels
*
gluBuild3DMipmaps
*
gluCheckExtension
*
gluCylinder
*
gluDeleteNurbsRenderer
*
gluDeleteQuadric
*
gluDeleteTess
*
gluDisk
*
gluEndCurve
*
gluEndPolygon
*
gluEndSurface
*
gluEndTrim
*
gluGetNurbsProperty
*
gluGetTessProperty
*
gluLoadSamplingMatrices
*
gluLookAt
*
gluNextContour
*
gluNurbsCallback
*
gluNurbsCallbackData
*
gluNurbsCallbackDataEXT
*
gluNurbsCurve
*
gluNurbsProperty
*
gluNurbsSurface
*
gluOrtho2D
*
gluPartialDisk
*
gluPerspective
*
gluPickMatrix
*
gluProject
*
gluPwlCurve
*
gluQuadricCallback
*
gluQuadricDrawStyle
*
gluQuadricNormals
*
gluQuadricOrientation
*
gluQuadricTexture
*
gluScaleImage
*
gluSphere
*
gluTessBeginContour
*
gluTessBeginPolygon
*
gluTessCallback
*
gluTessEndContour
*
gluTessEndPolygon
*
gluTessNormal
*
gluTessProperty
*
gluTessVertex
*
gluUnProject
*
gluUnProject4

POD ERRORS

Hey! The above document had some coding errors, which are explained below:
Around line 4102:
You can't have =items (as at line 4106) unless the first thing after the =over is an =item