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 =========================================================================*/
33 #ifndef vtkDefaultPainter_h
34 #define vtkDefaultPainter_h
35 
36 #include "vtkRenderingOpenGLModule.h" // For export macro
37 #include "vtkPainter.h"
38 
43 class vtkLightingPainter;
46 
47 class VTKRENDERINGOPENGL_EXPORT vtkDefaultPainter : public vtkPainter
48 {
49 public:
51  vtkTypeMacro(vtkDefaultPainter, vtkPainter);
52  virtual void PrintSelf(ostream &os, vtkIndent indent);
53 
55 
59  vtkGetObjectMacro(ScalarsToColorsPainter, vtkScalarsToColorsPainter);
61 
63 
67  vtkGetObjectMacro(ClipPlanesPainter, vtkClipPlanesPainter);
69 
71 
75  vtkGetObjectMacro(DisplayListPainter, vtkDisplayListPainter);
77 
79 
83  vtkGetObjectMacro(CompositePainter, vtkCompositePainter);
85 
87 
92  vtkGetObjectMacro(CoincidentTopologyResolutionPainter,
95 
97 
101  vtkGetObjectMacro(LightingPainter, vtkLightingPainter);
103 
105 
109  vtkGetObjectMacro(RepresentationPainter, vtkRepresentationPainter);
111 
118  virtual vtkPainter* GetDelegatePainter() { return this->DefaultPainterDelegate; }
119 
128  virtual void Render(vtkRenderer* renderer, vtkActor* actor,
129  unsigned long typeflags, bool forceCompileOnly);
130 
138 
144  void UpdateBounds(double bounds[6]);
145 
146 protected:
149 
153  virtual void BuildPainterChain();
154 
158  void ReportReferences(vtkGarbageCollector *collector) VTK_OVERRIDE;
159 
168 
171 
172 private:
173  vtkDefaultPainter(const vtkDefaultPainter &) VTK_DELETE_FUNCTION;
174  void operator=(const vtkDefaultPainter &) VTK_DELETE_FUNCTION;
175 };
176 
177 #endif //_vtkDefaultPainter_h
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:52
abstract class defining interface for painter that manages clipping.
painter that resolves conicident topology.
painter that can be inserted before any vtkDataSet painting chain to handle composite datasets.
sets up a default chain of painters.
void SetClipPlanesPainter(vtkClipPlanesPainter *)
Get/Set the painter that handles clipping.
static vtkDefaultPainter * New()
void SetDisplayListPainter(vtkDisplayListPainter *)
Get/Set the painter that builds display lists.
virtual void SetDelegatePainter(vtkPainter *)
Set/Get the painter to which this painter should propagare its draw calls.
virtual void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkScalarsToColorsPainter * ScalarsToColorsPainter
vtkClipPlanesPainter * ClipPlanesPainter
vtkTimeStamp ChainBuildTime
void SetCoincidentTopologyResolutionPainter(vtkCoincidentTopologyResolutionPainter *)
Painter used to resolve coincident topology.
void SetLightingPainter(vtkLightingPainter *)
Get/Set the painter that controls lighting.
void SetCompositePainter(vtkCompositePainter *)
Get/Set the painter used to handle composite datasets.
vtkPainter * DefaultPainterDelegate
void UpdateBounds(double bounds[6])
Expand or shrink the estimated bounds based on the geometric transformations applied in the painter.
virtual void ReleaseGraphicsResources(vtkWindow *)
Release any graphics resources that are being consumed by this painter.
vtkLightingPainter * LightingPainter
vtkRepresentationPainter * RepresentationPainter
virtual vtkPainter * GetDelegatePainter()
Set/Get the painter to which this painter should propagare its draw calls.
virtual void Render(vtkRenderer *renderer, vtkActor *actor, unsigned long typeflags, bool forceCompileOnly)
Overridden to setup the chain of painter depending on the actor representation.
vtkCompositePainter * CompositePainter
void SetDefaultPainterDelegate(vtkPainter *)
vtkDisplayListPainter * DisplayListPainter
vtkCoincidentTopologyResolutionPainter * CoincidentTopologyResolutionPainter
void ReportReferences(vtkGarbageCollector *collector) override
Take part in garbage collection.
void SetRepresentationPainter(vtkRepresentationPainter *)
Painter used to convert polydata to Wireframe/Points representation.
void SetScalarsToColorsPainter(vtkScalarsToColorsPainter *)
Get/Set the painter that maps scalars to colors.
virtual void BuildPainterChain()
Setups the the painter chain.
abstract superclass for painter that builds/uses display lists.
Detect and break reference loops.
a simple class to control print indentation
Definition: vtkIndent.h:40
abstract class defining interface for painter that can handle lightin.
Abstract class for drawing poly data.
Definition: vtkPainter.h:62
abstract specification for renderers
Definition: vtkRenderer.h:64
painter that handles representation.
painter that converts scalars to colors.
record modification and/or execution time
Definition: vtkTimeStamp.h:36
window superclass for vtkRenderWindow
Definition: vtkWindow.h:35