VTK
vtkRIBProperty.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkRIBProperty.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 =========================================================================*/
28 #ifndef vtkRIBProperty_h
29 #define vtkRIBProperty_h
30 
31 #include "vtkIOExportModule.h" // For export macro
32 #include "vtkProperty.h"
33 
34 class vtkRIBRenderer;
35 
36 class VTKIOEXPORT_EXPORT vtkRIBProperty : public vtkProperty
37 {
38 public:
39  static vtkRIBProperty *New();
40  vtkTypeMacro(vtkRIBProperty,vtkProperty);
41  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
42 
44 
55  vtkSetMacro(SurfaceShaderUsesDefaultParameters, bool);
56  vtkGetMacro(SurfaceShaderUsesDefaultParameters, bool);
57  vtkBooleanMacro(SurfaceShaderUsesDefaultParameters, bool);
59 
61 
64  vtkSetStringMacro(SurfaceShader);
65  vtkGetStringMacro(SurfaceShader);
67 
69 
72  vtkSetStringMacro(DisplacementShader);
73  vtkGetStringMacro(DisplacementShader);
75 
77 
80  void SetVariable (const char *variable, const char *declaration);
81  void AddVariable (const char *variable, const char *declaration);
83 
87  char *GetDeclarations ();
88 
90 
94  void SetParameter (const char *parameter, const char *value);
95  void AddParameter (const char *parameter, const char *value);
97 
99 
102  void SetSurfaceShaderParameter (const char *parameter, const char *value);
103  void AddSurfaceShaderParameter (const char *parameter, const char *value);
105 
107 
110  void SetDisplacementShaderParameter (const char *parameter, const char *value);
111  void AddDisplacementShaderParameter (const char *parameter, const char *value);
113 
115 
118  char *GetParameters (); // DEPRECATED: use GetSurfaceShaderParameters instead.
119  char *GetSurfaceShaderParameters ();
120  char *GetDisplacementShaderParameters ();
122 
123 protected:
124  vtkRIBProperty();
125  ~vtkRIBProperty() VTK_OVERRIDE;
126 
127  void Render(vtkActor *a, vtkRenderer *ren) VTK_OVERRIDE;
128  vtkProperty *Property;
129  char *SurfaceShader;
130  char *DisplacementShader;
131  char *Declarations;
132  char *SurfaceShaderParameters;
133  char *DisplacementShaderParameters;
134  bool SurfaceShaderUsesDefaultParameters;
135 
136 private:
137  vtkRIBProperty(const vtkRIBProperty&) VTK_DELETE_FUNCTION;
138  void operator=(const vtkRIBProperty&) VTK_DELETE_FUNCTION;
139 };
140 
141 #endif
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:45
static vtkProperty * New()
Construct object with object color, ambient color, diffuse color, specular color, and edge color whit...
represent surface properties of a geometric object
Definition: vtkProperty.h:58
RIP Property.
abstract specification for renderers
Definition: vtkRenderer.h:57
a simple class to control print indentation
Definition: vtkIndent.h:33
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.