Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkMesaPolyDataMapper.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkMesaPolyDataMapper.h,v $
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00029 #ifndef __vtkMesaPolyDataMapper_h
00030 #define __vtkMesaPolyDataMapper_h
00031 
00032 #include "vtkPolyDataMapper.h"
00033 #include "MangleMesaInclude/gl.h"  // Needed for GLenum
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   vtkTypeRevisionMacro(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;   // RenderWindow used for the previous render
00111 private:
00112   vtkMesaPolyDataMapper(const vtkMesaPolyDataMapper&);  // Not implemented.
00113   void operator=(const vtkMesaPolyDataMapper&);  // Not implemented.
00114 };
00115 
00116 #endif

Generated on Mon Jan 21 23:07:35 2008 for VTK by  doxygen 1.4.3-20050530