VTK  9.4.20241221
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
128#ifndef vtkImageProperty_h
129#define vtkImageProperty_h
130
131#include "vtkObject.h"
132#include "vtkRenderingCoreModule.h" // For export macro
133#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
134
135VTK_ABI_NAMESPACE_BEGIN
137
138class VTKRENDERINGCORE_EXPORT VTK_MARSHALAUTO vtkImageProperty : public vtkObject
139{
140public:
142 void PrintSelf(ostream& os, vtkIndent indent) override;
143
148
153
155
158 vtkSetMacro(ColorWindow, double);
159 vtkGetMacro(ColorWindow, double);
161
163
166 vtkSetMacro(ColorLevel, double);
167 vtkGetMacro(ColorLevel, double);
169
171
177 vtkGetObjectMacro(LookupTable, vtkScalarsToColors);
179
181
186 vtkSetMacro(UseLookupTableScalarRange, vtkTypeBool);
187 vtkGetMacro(UseLookupTableScalarRange, vtkTypeBool);
188 vtkBooleanMacro(UseLookupTableScalarRange, vtkTypeBool);
190
192
198 vtkSetClampMacro(Opacity, double, 0.0, 1.0);
199 vtkGetMacro(Opacity, double);
201
203
206 vtkSetClampMacro(Ambient, double, 0.0, 1.0);
207 vtkGetMacro(Ambient, double);
209
211
214 vtkSetClampMacro(Diffuse, double, 0.0, 1.0);
215 vtkGetMacro(Diffuse, double);
217
219
222 vtkSetClampMacro(InterpolationType, int, VTK_NEAREST_INTERPOLATION, VTK_CUBIC_INTERPOLATION);
223 vtkGetMacro(InterpolationType, int);
224 void SetInterpolationTypeToNearest() { this->SetInterpolationType(VTK_NEAREST_INTERPOLATION); }
225 void SetInterpolationTypeToLinear() { this->SetInterpolationType(VTK_LINEAR_INTERPOLATION); }
226 void SetInterpolationTypeToCubic() { this->SetInterpolationType(VTK_CUBIC_INTERPOLATION); }
227 virtual const char* GetInterpolationTypeAsString();
229
231
235 vtkSetMacro(LayerNumber, int);
236 int GetLayerNumber() { return this->LayerNumber; }
238
240
244 vtkSetMacro(Checkerboard, vtkTypeBool);
245 vtkBooleanMacro(Checkerboard, vtkTypeBool);
246 vtkGetMacro(Checkerboard, vtkTypeBool);
248
250
253 vtkSetVector2Macro(CheckerboardSpacing, double);
254 vtkGetVector2Macro(CheckerboardSpacing, double);
256
258
262 vtkSetVector2Macro(CheckerboardOffset, double);
263 vtkGetVector2Macro(CheckerboardOffset, double);
265
267
273 vtkSetMacro(Backing, vtkTypeBool);
274 vtkBooleanMacro(Backing, vtkTypeBool);
275 vtkGetMacro(Backing, vtkTypeBool);
277
279
282 vtkSetVector3Macro(BackingColor, double);
283 vtkGetVector3Macro(BackingColor, double);
285
291
292protected:
295
302 double Opacity;
303 double Ambient;
304 double Diffuse;
306 double CheckerboardSpacing[2];
307 double CheckerboardOffset[2];
309 double BackingColor[3];
310
311private:
312 vtkImageProperty(const vtkImageProperty&) = delete;
313 void operator=(const vtkImageProperty&) = delete;
314};
315
316VTK_ABI_NAMESPACE_END
317#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:108
abstract base class for most VTK objects
Definition vtkObject.h:162
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
#define VTK_MARSHALAUTO