VTK  9.3.1
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 
25 VTK_ABI_NAMESPACE_BEGIN
26 class vtkScalarsToColors;
27 
28 class VTKRENDERINGCORE_EXPORT vtkImageProperty : public vtkObject
29 {
30 public:
31  vtkTypeMacro(vtkImageProperty, vtkObject);
32  void PrintSelf(ostream& os, vtkIndent indent) override;
33 
37  static vtkImageProperty* New();
38 
42  void DeepCopy(vtkImageProperty* p);
43 
45 
48  vtkSetMacro(ColorWindow, double);
49  vtkGetMacro(ColorWindow, double);
51 
53 
56  vtkSetMacro(ColorLevel, double);
57  vtkGetMacro(ColorLevel, double);
59 
61 
66  virtual void SetLookupTable(vtkScalarsToColors* lut);
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 
180  vtkMTimeType GetMTime() override;
181 
182 protected:
184  ~vtkImageProperty() override;
185 
187  double ColorWindow;
188  double ColorLevel;
192  double Opacity;
193  double Ambient;
194  double Diffuse;
196  double CheckerboardSpacing[2];
197  double CheckerboardOffset[2];
199  double BackingColor[3];
200 
201 private:
202  vtkImageProperty(const vtkImageProperty&) = delete;
203  void operator=(const vtkImageProperty&) = delete;
204 };
205 
206 VTK_ABI_NAMESPACE_END
207 #endif
vtkScalarsToColors * LookupTable
int GetLayerNumber()
Set the layer number.
abstract base class for most VTK objects
Definition: vtkObject.h:51
void SetInterpolationTypeToCubic()
The interpolation type (default: VTK_LINEAR_INTERPOLATION).
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
#define VTK_LINEAR_INTERPOLATION
image display properties
#define VTK_CUBIC_INTERPOLATION
int vtkTypeBool
Definition: vtkABI.h:64
Superclass for mapping scalar values to colors.
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkTypeBool Checkerboard
vtkTypeBool UseLookupTableScalarRange
void SetInterpolationTypeToLinear()
The interpolation type (default: VTK_LINEAR_INTERPOLATION).
void SetInterpolationTypeToNearest()
The interpolation type (default: VTK_LINEAR_INTERPOLATION).
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
#define VTK_NEAREST_INTERPOLATION