00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00029 #ifndef __vtkMesaPolyDataMapper_h
00030 #define __vtkMesaPolyDataMapper_h
00031
00032 #include "vtkPolyDataMapper.h"
00033 #include "MangleMesaInclude/gl.h"
00034
00035 class vtkCellArray;
00036 class vtkPoints;
00037 class vtkProperty;
00038 class vtkRenderWindow;
00039 class vtkMesaRenderer;
00040 class vtkTimerLog;
00041 class vtkOpenGLTexture;
00042
00043 class VTK_RENDERING_EXPORT vtkMesaPolyDataMapper : public vtkPolyDataMapper
00044 {
00045 public:
00046 static vtkMesaPolyDataMapper *New();
00047 vtkTypeMacro(vtkMesaPolyDataMapper,vtkPolyDataMapper);
00048 virtual void PrintSelf(ostream& os, vtkIndent indent);
00049
00051 virtual void RenderPiece(vtkRenderer *ren, vtkActor *a);
00052
00056 void ReleaseGraphicsResources(vtkWindow *);
00057
00059 virtual int Draw(vtkRenderer *ren, vtkActor *a);
00060
00061 protected:
00062 vtkMesaPolyDataMapper();
00063 ~vtkMesaPolyDataMapper();
00064
00065 void DrawPoints(int idx,
00066 vtkPoints *p,
00067 vtkDataArray *n,
00068 vtkUnsignedCharArray *c,
00069 vtkDataArray *t,
00070 vtkIdType &cellNum,
00071 int &noAbort,
00072 vtkCellArray *ca,
00073 vtkRenderer *ren);
00074
00075 void DrawLines(int idx,
00076 vtkPoints *p,
00077 vtkDataArray *n,
00078 vtkUnsignedCharArray *c,
00079 vtkDataArray *t,
00080 vtkIdType &cellNum,
00081 int &noAbort,
00082 vtkCellArray *ca,
00083 vtkRenderer *ren);
00084
00085 void DrawPolygons(int idx,
00086 vtkPoints *p,
00087 vtkDataArray *n,
00088 vtkUnsignedCharArray *c,
00089 vtkDataArray *t,
00090 vtkIdType &cellNum,
00091 int &noAbort,
00092 GLenum rep,
00093 vtkCellArray *ca,
00094 vtkRenderer *ren);
00095
00096 void DrawTStrips(int idx,
00097 vtkPoints *p,
00098 vtkDataArray *n,
00099 vtkUnsignedCharArray *c,
00100 vtkDataArray *t,
00101 vtkIdType &cellNum,
00102 int &noAbort,
00103 GLenum rep,
00104 vtkCellArray *ca,
00105 vtkRenderer *ren);
00106
00107 vtkIdType TotalCells;
00108 int ListId;
00109 vtkOpenGLTexture* InternalColorTexture;
00110 vtkRenderWindow *RenderWindow;
00111 private:
00112 vtkMesaPolyDataMapper(const vtkMesaPolyDataMapper&);
00113 void operator=(const vtkMesaPolyDataMapper&);
00114 };
00115
00116 #endif