VTK  9.7.20260723
vtkRIBProperty.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
37
38#ifndef vtkRIBProperty_h
39#define vtkRIBProperty_h
40
41#include "vtkDeprecation.h" // For VTK_DEPRECATED_IN_9_8_0
42#include "vtkIOExportModule.h" // For export macro
43#include "vtkProperty.h"
44
45VTK_ABI_NAMESPACE_BEGIN
46class vtkRIBRenderer;
47
48class VTKIOEXPORT_EXPORT vtkRIBProperty : public vtkProperty
49{
50public:
53 void PrintSelf(ostream& os, vtkIndent indent) override;
54
56
69 vtkBooleanMacro(SurfaceShaderUsesDefaultParameters, bool);
71
73
76 vtkSetStringMacro(SurfaceShader);
77 vtkGetStringMacro(SurfaceShader);
79
81
84 vtkSetStringMacro(DisplacementShader);
85 vtkGetStringMacro(DisplacementShader);
87
89
92 void SetVariable(const char* variable, const char* declaration);
93 void AddVariable(const char* variable, const char* declaration);
95
100
102
106 VTK_DEPRECATED_IN_9_8_0("Use SetSurfaceShaderParameter instead")
107 void SetParameter(const char* parameter, const char* value);
108 VTK_DEPRECATED_IN_9_8_0("Use AddSurfaceShaderParameter instead")
109 void AddParameter(const char* parameter, const char* value);
111
113
116 void SetSurfaceShaderParameter(const char* parameter, const char* value);
117 void AddSurfaceShaderParameter(const char* parameter, const char* value);
119
121
124 void SetDisplacementShaderParameter(const char* parameter, const char* value);
125 void AddDisplacementShaderParameter(const char* parameter, const char* value);
127
129
132 VTK_DEPRECATED_IN_9_8_0("Use GetSurfaceShaderParameter instead")
133 char* GetParameters(); // DEPRECATED: use GetSurfaceShaderParameters instead.
137
138protected:
140 ~vtkRIBProperty() override;
141
142 void Render(vtkActor* a, vtkRenderer* ren) override;
150
151private:
152 vtkRIBProperty(const vtkRIBProperty&) = delete;
153 void operator=(const vtkRIBProperty&) = delete;
154};
155
156VTK_ABI_NAMESPACE_END
157#endif
represents an object (geometry & properties) in a rendered scene
Definition vtkActor.h:151
a simple class to control print indentation
Definition vtkIndent.h:108
char * GetDisplacementShaderParameters()
Get parameters.
void SetDisplacementShaderParameter(const char *parameter, const char *value)
Specify parameter values for displacement shader parameters.
char * GetDeclarations()
Get variable declarations.
char * GetParameters()
Get parameters.
void SetParameter(const char *parameter, const char *value)
Specify parameter values for variables.
bool SurfaceShaderUsesDefaultParameters
vtkProperty * Property
void SetSurfaceShaderParameter(const char *parameter, const char *value)
Specify parameter values for surface shader parameters.
static vtkRIBProperty * New()
char * GetSurfaceShaderParameters()
Get parameters.
void Render(vtkActor *a, vtkRenderer *ren) override
This method causes the property to set up whatever is required for its instance variables.
void AddDisplacementShaderParameter(const char *parameter, const char *value)
Specify parameter values for displacement shader parameters.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void AddSurfaceShaderParameter(const char *parameter, const char *value)
Specify parameter values for surface shader parameters.
void AddParameter(const char *parameter, const char *value)
Specify parameter values for variables.
void SetVariable(const char *variable, const char *declaration)
Specify declarations for variables.
char * SurfaceShaderParameters
char * DisplacementShaderParameters
char * DisplacementShader
void AddVariable(const char *variable, const char *declaration)
Specify declarations for variables.
abstract specification for renderers
#define VTK_DEPRECATED_IN_9_8_0(reason)