VTK  9.1.0
vtkImageProperty.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImageProperty.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
137 #ifndef vtkImageProperty_h
138 #define vtkImageProperty_h
139 
140 #include "vtkObject.h"
141 #include "vtkRenderingCoreModule.h" // For export macro
142 
143 class vtkScalarsToColors;
144 
145 class VTKRENDERINGCORE_EXPORT vtkImageProperty : public vtkObject
146 {
147 public:
148  vtkTypeMacro(vtkImageProperty, vtkObject);
149  void PrintSelf(ostream& os, vtkIndent indent) override;
150 
155 
160 
162 
165  vtkSetMacro(ColorWindow, double);
166  vtkGetMacro(ColorWindow, double);
168 
170 
173  vtkSetMacro(ColorLevel, double);
174  vtkGetMacro(ColorLevel, double);
176 
178 
183  virtual void SetLookupTable(vtkScalarsToColors* lut);
184  vtkGetObjectMacro(LookupTable, vtkScalarsToColors);
186 
188 
193  vtkSetMacro(UseLookupTableScalarRange, vtkTypeBool);
194  vtkGetMacro(UseLookupTableScalarRange, vtkTypeBool);
195  vtkBooleanMacro(UseLookupTableScalarRange, vtkTypeBool);
197 
199 
205  vtkSetClampMacro(Opacity, double, 0.0, 1.0);
206  vtkGetMacro(Opacity, double);
208 
210 
213  vtkSetClampMacro(Ambient, double, 0.0, 1.0);
214  vtkGetMacro(Ambient, double);
216 
218 
221  vtkSetClampMacro(Diffuse, double, 0.0, 1.0);
222  vtkGetMacro(Diffuse, double);
224 
226 
229  vtkSetClampMacro(InterpolationType, int, VTK_NEAREST_INTERPOLATION, VTK_CUBIC_INTERPOLATION);
230  vtkGetMacro(InterpolationType, int);
231  void SetInterpolationTypeToNearest() { this->SetInterpolationType(VTK_NEAREST_INTERPOLATION); }
232  void SetInterpolationTypeToLinear() { this->SetInterpolationType(VTK_LINEAR_INTERPOLATION); }
233  void SetInterpolationTypeToCubic() { this->SetInterpolationType(VTK_CUBIC_INTERPOLATION); }
234  virtual const char* GetInterpolationTypeAsString();
236 
238 
242  vtkSetMacro(LayerNumber, int);
243  int GetLayerNumber() { return this->LayerNumber; }
245 
247 
251  vtkSetMacro(Checkerboard, vtkTypeBool);
252  vtkBooleanMacro(Checkerboard, vtkTypeBool);
253  vtkGetMacro(Checkerboard, vtkTypeBool);
255 
257 
260  vtkSetVector2Macro(CheckerboardSpacing, double);
261  vtkGetVector2Macro(CheckerboardSpacing, double);
263 
265 
269  vtkSetVector2Macro(CheckerboardOffset, double);
270  vtkGetVector2Macro(CheckerboardOffset, double);
272 
274 
280  vtkSetMacro(Backing, vtkTypeBool);
281  vtkBooleanMacro(Backing, vtkTypeBool);
282  vtkGetMacro(Backing, vtkTypeBool);
284 
286 
289  vtkSetVector3Macro(BackingColor, double);
290  vtkGetVector3Macro(BackingColor, double);
292 
297  vtkMTimeType GetMTime() override;
298 
299 protected:
301  ~vtkImageProperty() override;
302 
304  double ColorWindow;
305  double ColorLevel;
309  double Opacity;
310  double Ambient;
311  double Diffuse;
313  double CheckerboardSpacing[2];
314  double CheckerboardOffset[2];
316  double BackingColor[3];
317 
318 private:
319  vtkImageProperty(const vtkImageProperty&) = delete;
320  void operator=(const vtkImageProperty&) = delete;
321 };
322 
323 #endif
image display properties
vtkTypeBool Checkerboard
void DeepCopy(vtkImageProperty *p)
Assign one property to another.
virtual const char * GetInterpolationTypeAsString()
The interpolation type (default: VTK_LINEAR_INTERPOLATION).
static vtkImageProperty * New()
Construct a property with no lookup table.
virtual void SetLookupTable(vtkScalarsToColors *lut)
Specify a lookup table for the data.
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
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:113
abstract base class for most VTK objects
Definition: vtkObject.h:73
Superclass for mapping scalar values to colors.
int vtkTypeBool
Definition: vtkABI.h:69
#define VTK_CUBIC_INTERPOLATION
#define VTK_NEAREST_INTERPOLATION
#define VTK_LINEAR_INTERPOLATION
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287