PDL::Graphics::OpenGL -- a PDL interface to the OpenGL graphics library. PDL::Graphics::OpenGLOO - an Object Oriented interface to the interface. 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.
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
glXBindTexImageEXT OO interface to the glXBindTexImageEXT function
glXReleaseTexImageEXT OO interface to the glXReleaseTexImageEXT 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 glGetPointerv 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 glEnableTraceMESA glDisableTraceMESA glNewTraceMESA glEndTraceMESA glTraceAssertAttribMESA glTraceCommentMESA glTraceTextureMESA glTraceListMESA glTracePointerMESA glTracePointerRangeMESA 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 glXFreeMemoryNV glXFreeMemoryMESA glXGetMemoryOffsetMESA glXBindTexImageARB glXReleaseTexImageARB glXDrawableAttribARB glXGetFrameUsageMESA glXBeginFrameTrackingMESA glXEndFrameTrackingMESA glXQueryFrameTrackingMESA glXSwapIntervalMESA glXGetSwapIntervalMESA glXBindTexImageEXT glXReleaseTexImageEXT 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