VTK  9.3.0
vtkImageProperty.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 vtkImageProperty_h
20#define vtkImageProperty_h
21
22#include "vtkObject.h"
23#include "vtkRenderingCoreModule.h" // For export macro
24
25VTK_ABI_NAMESPACE_BEGIN
27
28class VTKRENDERINGCORE_EXPORT vtkImageProperty : public vtkObject
29{
30public:
32 void PrintSelf(ostream& os, vtkIndent indent) override;
33
38
43
45
48 vtkSetMacro(ColorWindow, double);
49 vtkGetMacro(ColorWindow, double);
51
53
56 vtkSetMacro(ColorLevel, double);
57 vtkGetMacro(ColorLevel, double);
59
61
67 vtkGetObjectMacro(LookupTable, vtkScalarsToColors);
69
71
76 vtkSetMacro(UseLookupTableScalarRange, vtkTypeBool);
77 vtkGetMacro(UseLookupTableScalarRange, vtkTypeBool);
78 vtkBooleanMacro(UseLookupTableScalarRange, vtkTypeBool);
80
82
88 vtkSetClampMacro(Opacity, double, 0.0, 1.0);
89 vtkGetMacro(Opacity, double);
91
93
96 vtkSetClampMacro(Ambient, double, 0.0, 1.0);
97 vtkGetMacro(Ambient, double);
99
101
104 vtkSetClampMacro(Diffuse, double, 0.0, 1.0);
105 vtkGetMacro(Diffuse, double);
107
109
112 vtkSetClampMacro(InterpolationType, int, VTK_NEAREST_INTERPOLATION, VTK_CUBIC_INTERPOLATION);
113 vtkGetMacro(InterpolationType, int);
114 void SetInterpolationTypeToNearest() { this->SetInterpolationType(VTK_NEAREST_INTERPOLATION); }
115 void SetInterpolationTypeToLinear() { this->SetInterpolationType(VTK_LINEAR_INTERPOLATION); }
116 void SetInterpolationTypeToCubic() { this->SetInterpolationType(VTK_CUBIC_INTERPOLATION); }
117 virtual const char* GetInterpolationTypeAsString();
119
121
125 vtkSetMacro(LayerNumber, int);
126 int GetLayerNumber() { return this->LayerNumber; }
128
130
134 vtkSetMacro(Checkerboard, vtkTypeBool);
135 vtkBooleanMacro(Checkerboard, vtkTypeBool);
136 vtkGetMacro(Checkerboard, vtkTypeBool);
138
140
143 vtkSetVector2Macro(CheckerboardSpacing, double);
144 vtkGetVector2Macro(CheckerboardSpacing, double);
146
148
152 vtkSetVector2Macro(CheckerboardOffset, double);
153 vtkGetVector2Macro(CheckerboardOffset, double);
155
157
163 vtkSetMacro(Backing, vtkTypeBool);
164 vtkBooleanMacro(Backing, vtkTypeBool);
165 vtkGetMacro(Backing, vtkTypeBool);
167
169
172 vtkSetVector3Macro(BackingColor, double);
173 vtkGetVector3Macro(BackingColor, double);
175
181
182protected:
185
192 double Opacity;
193 double Ambient;
194 double Diffuse;
196 double CheckerboardSpacing[2];
197 double CheckerboardOffset[2];
199 double BackingColor[3];
200
201private:
202 vtkImageProperty(const vtkImageProperty&) = delete;
203 void operator=(const vtkImageProperty&) = delete;
204};
205
206VTK_ABI_NAMESPACE_END
207#endif
image display properties
vtkTypeBool Checkerboard
void DeepCopy(vtkImageProperty *p)
Assign one property to another.
virtual void SetLookupTable(vtkScalarsToColors *lut)
Specify a lookup table for the data.
virtual const char * GetInterpolationTypeAsString()
The interpolation type (default: VTK_LINEAR_INTERPOLATION).
void SetInterpolationTypeToLinear()
The interpolation type (default: VTK_LINEAR_INTERPOLATION).
vtkScalarsToColors * LookupTable
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int GetLayerNumber()
Set the layer number.
~vtkImageProperty() override
static vtkImageProperty * New()
Construct a property with no lookup table.
vtkTypeBool UseLookupTableScalarRange
vtkMTimeType GetMTime() override
Get the MTime for this property.
void SetInterpolationTypeToCubic()
The interpolation type (default: VTK_LINEAR_INTERPOLATION).
void SetInterpolationTypeToNearest()
The interpolation type (default: VTK_LINEAR_INTERPOLATION).
a simple class to control print indentation
Definition vtkIndent.h:29
abstract base class for most VTK objects
Definition vtkObject.h:49
Superclass for mapping scalar values to colors.
int vtkTypeBool
Definition vtkABI.h:64
#define VTK_CUBIC_INTERPOLATION
#define VTK_NEAREST_INTERPOLATION
#define VTK_LINEAR_INTERPOLATION
vtkTypeUInt32 vtkMTimeType
Definition vtkType.h:270