VTK  9.3.0
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
19#ifndef vtkRIBProperty_h
20#define vtkRIBProperty_h
21
22#include "vtkIOExportModule.h" // For export macro
23#include "vtkProperty.h"
24
25VTK_ABI_NAMESPACE_BEGIN
26class vtkRIBRenderer;
27
28class VTKIOEXPORT_EXPORT vtkRIBProperty : public vtkProperty
29{
30public:
33 void PrintSelf(ostream& os, vtkIndent indent) override;
34
36
47 vtkSetMacro(SurfaceShaderUsesDefaultParameters, bool);
48 vtkGetMacro(SurfaceShaderUsesDefaultParameters, bool);
49 vtkBooleanMacro(SurfaceShaderUsesDefaultParameters, bool);
51
53
56 vtkSetStringMacro(SurfaceShader);
57 vtkGetStringMacro(SurfaceShader);
59
61
64 vtkSetStringMacro(DisplacementShader);
65 vtkGetStringMacro(DisplacementShader);
67
69
72 void SetVariable(const char* variable, const char* declaration);
73 void AddVariable(const char* variable, const char* declaration);
75
80
82
86 void SetParameter(const char* parameter, const char* value);
87 void AddParameter(const char* parameter, const char* value);
89
91
94 void SetSurfaceShaderParameter(const char* parameter, const char* value);
95 void AddSurfaceShaderParameter(const char* parameter, const char* value);
97
99
102 void SetDisplacementShaderParameter(const char* parameter, const char* value);
103 void AddDisplacementShaderParameter(const char* parameter, const char* value);
105
107
110 char* GetParameters(); // DEPRECATED: use GetSurfaceShaderParameters instead.
114
115protected:
117 ~vtkRIBProperty() override;
118
119 void Render(vtkActor* a, vtkRenderer* ren) override;
127
128private:
129 vtkRIBProperty(const vtkRIBProperty&) = delete;
130 void operator=(const vtkRIBProperty&) = delete;
131};
132
133VTK_ABI_NAMESPACE_END
134#endif
represents an object (geometry & properties) in a rendered scene
Definition vtkActor.h:41
a simple class to control print indentation
Definition vtkIndent.h:29
represent surface properties of a geometric object
Definition vtkProperty.h:57
RIP Property.
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
~vtkRIBProperty() override
void AddVariable(const char *variable, const char *declaration)
Specify declarations for variables.
abstract specification for renderers
Definition vtkRenderer.h:59