VTK
vtkDefaultPainter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkDefaultPainter.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
32 #ifndef __vtkDefaultPainter_h
33 #define __vtkDefaultPainter_h
34 
35 #include "vtkRenderingCoreModule.h" // For export macro
36 #include "vtkPainter.h"
37 
42 class vtkLightingPainter;
45 
46 class VTKRENDERINGCORE_EXPORT vtkDefaultPainter : public vtkPainter
47 {
48 public:
49  static vtkDefaultPainter *New();
50  vtkTypeMacro(vtkDefaultPainter, vtkPainter);
51  virtual void PrintSelf(ostream &os, vtkIndent indent);
52 
54 
55  void SetScalarsToColorsPainter(vtkScalarsToColorsPainter*);
56  vtkGetObjectMacro(ScalarsToColorsPainter, vtkScalarsToColorsPainter);
58 
60 
61  void SetClipPlanesPainter(vtkClipPlanesPainter*);
62  vtkGetObjectMacro(ClipPlanesPainter, vtkClipPlanesPainter);
64 
66 
67  void SetDisplayListPainter(vtkDisplayListPainter*);
68  vtkGetObjectMacro(DisplayListPainter, vtkDisplayListPainter);
70 
72 
73  void SetCompositePainter(vtkCompositePainter*);
74  vtkGetObjectMacro(CompositePainter, vtkCompositePainter);
76 
78 
79  void SetCoincidentTopologyResolutionPainter(
81  vtkGetObjectMacro(CoincidentTopologyResolutionPainter,
84 
86 
87  void SetLightingPainter(vtkLightingPainter*);
88  vtkGetObjectMacro(LightingPainter, vtkLightingPainter);
90 
92 
93  void SetRepresentationPainter(vtkRepresentationPainter*);
94  vtkGetObjectMacro(RepresentationPainter, vtkRepresentationPainter);
96 
98 
101  virtual void SetDelegatePainter(vtkPainter*);
102  virtual vtkPainter* GetDelegatePainter() { return this->DefaultPainterDelegate; }
104 
106 
111  virtual void Render(vtkRenderer* renderer, vtkActor* actor,
112  unsigned long typeflags, bool forceCompileOnly);
114 
119  virtual void ReleaseGraphicsResources(vtkWindow *);
120 
124  void UpdateBounds(double bounds[6]);
125 
126 protected:
129 
131  virtual void BuildPainterChain();
132 
134  virtual void ReportReferences(vtkGarbageCollector *collector);
135 
144 
146  void SetDefaultPainterDelegate(vtkPainter*);
147 
148 private:
149  vtkDefaultPainter(const vtkDefaultPainter &); // Not implemented
150  void operator=(const vtkDefaultPainter &); // Not implemented
151 };
152 
153 #endif //_vtkDefaultPainter_h
154