vtkOpenGLProjectedPolyDataRayBounder.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00046 #ifndef __vtkOpenGLProjectedPolyDataRayBounder_h
00047 #define __vtkOpenGLProjectedPolyDataRayBounder_h
00048
00049 #include "vtkProjectedPolyDataRayBounder.h"
00050 #ifndef VTK_IMPLEMENT_MESA_CXX
00051 #ifdef __APPLE__
00052 #include <OpenGL/gl.h>
00053 #else
00054 #include <GL/gl.h>
00055 #endif
00056 #endif
00057
00058 class vtkWindow;
00059
00060 class VTK_RENDERING_EXPORT vtkOpenGLProjectedPolyDataRayBounder : public vtkProjectedPolyDataRayBounder
00061 {
00062 public:
00063 vtkTypeRevisionMacro(vtkOpenGLProjectedPolyDataRayBounder,vtkProjectedPolyDataRayBounder);
00064 void PrintSelf(ostream& os, vtkIndent indent);
00065
00068 static vtkOpenGLProjectedPolyDataRayBounder *New();
00069
00073 void ReleaseGraphicsResources(vtkWindow *);
00074
00075
00076 protected:
00077 vtkOpenGLProjectedPolyDataRayBounder();
00078 ~vtkOpenGLProjectedPolyDataRayBounder();
00079
00080 GLuint DisplayList;
00081 float *DepthRangeBuffer;
00082
00084 void Build( vtkPolyData *pdata );
00085
00087 float *Draw( vtkRenderer *ren, vtkMatrix4x4 *matrix );
00088
00089 private:
00090 vtkOpenGLProjectedPolyDataRayBounder(const vtkOpenGLProjectedPolyDataRayBounder&);
00091 void operator=(const vtkOpenGLProjectedPolyDataRayBounder&);
00092 };
00093
00094 #endif