VTK  9.1.0
vtkVolumeProperty.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkVolumeProperty.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 =========================================================================*/
15 
144 #ifndef vtkVolumeProperty_h
145 #define vtkVolumeProperty_h
146 
147 #include "vtkImplicitFunction.h" // For vtkImplicitFunction
148 #include "vtkNew.h" // Needed for vtkNew
149 #include "vtkObject.h"
150 #include "vtkRenderingCoreModule.h" // For export macro
151 #include "vtkSmartPointer.h" // Needed for vtkSmartPointer
152 
153 // STL includes
154 #include <set> // For labelmap labels set
155 #include <unordered_map> // For labelmap transfer function maps
156 
158 class vtkContourValues;
159 class vtkImageData;
161 class vtkTimeStamp;
162 
163 class VTKRENDERINGCORE_EXPORT vtkVolumeProperty : public vtkObject
164 {
165 public:
167  vtkTypeMacro(vtkVolumeProperty, vtkObject);
168  void PrintSelf(ostream& os, vtkIndent indent) override;
170 
175  vtkMTimeType GetMTime() override;
176 
178 
199  vtkSetClampMacro(IndependentComponents, vtkTypeBool, 0, 1);
200  vtkGetMacro(IndependentComponents, vtkTypeBool);
201  vtkBooleanMacro(IndependentComponents, vtkTypeBool);
203 
205 
209  vtkSetClampMacro(InterpolationType, int, VTK_NEAREST_INTERPOLATION, VTK_LINEAR_INTERPOLATION);
210  vtkGetMacro(InterpolationType, int);
211  void SetInterpolationTypeToNearest() { this->SetInterpolationType(VTK_NEAREST_INTERPOLATION); }
212  void SetInterpolationTypeToLinear() { this->SetInterpolationType(VTK_LINEAR_INTERPOLATION); }
213  const char* GetInterpolationTypeAsString(void);
215 
217 
221  virtual void SetComponentWeight(int index, double value);
222  virtual double GetComponentWeight(int index);
224 
230  void SetColor(int index, vtkPiecewiseFunction* function);
231  void SetColor(vtkPiecewiseFunction* function) { this->SetColor(0, function); }
232 
240  void SetColor(vtkColorTransferFunction* function) { this->SetColor(0, function); }
241 
247  int GetColorChannels() { return this->GetColorChannels(0); }
248 
256 
264 
270  void SetScalarOpacity(vtkPiecewiseFunction* function) { this->SetScalarOpacity(0, function); }
271 
279 
281 
287  void SetScalarOpacityUnitDistance(int index, double distance);
288  void SetScalarOpacityUnitDistance(double distance)
289  {
290  this->SetScalarOpacityUnitDistance(0, distance);
291  }
295 
301  void SetGradientOpacity(vtkPiecewiseFunction* function) { this->SetGradientOpacity(0, function); }
302 
304 
311  void SetTransferFunction2D(vtkImageData* function) { this->SetTransferFunction2D(0, function); };
312 
315 
324  {
325  TF_1D = 0,
326  TF_2D
327  };
328 
329  vtkSetClampMacro(TransferFunctionMode, int, 0, 1);
330  vtkGetMacro(TransferFunctionMode, int);
332 
343 
345 
352  virtual void SetDisableGradientOpacity(int index, int value);
353  virtual void SetDisableGradientOpacity(int value) { this->SetDisableGradientOpacity(0, value); }
354  virtual void DisableGradientOpacityOn(int index) { this->SetDisableGradientOpacity(index, 1); }
356  virtual void DisableGradientOpacityOff(int index) { this->SetDisableGradientOpacity(index, 0); }
359  virtual int GetDisableGradientOpacity() { return this->GetDisableGradientOpacity(0); }
363 
370  bool HasGradientOpacity(int index = 0)
371  {
372  switch (this->TransferFunctionMode)
373  {
374  case TF_1D:
375  return (this->GradientOpacity[index] != nullptr);
376  case TF_2D:
377  return true;
378  }
379  return false;
380  }
381 
382  /*
383  * Check whether or not we have label map gradient opacity functions.
384  */
385  bool HasLabelGradientOpacity() { return !this->LabelGradientOpacity.empty(); }
386 
388 
408  void SetShade(int index, int value);
409  void SetShade(int value) { this->SetShade(0, value); }
410  int GetShade(int index);
411  int GetShade() { return this->GetShade(0); }
412  void ShadeOn(int index);
413  void ShadeOn() { this->ShadeOn(0); }
414  void ShadeOff(int index);
415  void ShadeOff() { this->ShadeOff(0); }
417 
419 
422  void SetAmbient(int index, double value);
423  void SetAmbient(double value) { this->SetAmbient(0, value); }
424  double GetAmbient(int index);
425  double GetAmbient() { return this->GetAmbient(0); }
427 
429 
432  void SetDiffuse(int index, double value);
433  void SetDiffuse(double value) { this->SetDiffuse(0, value); }
434  double GetDiffuse(int index);
435  double GetDiffuse() { return this->GetDiffuse(0); }
437 
439 
442  void SetSpecular(int index, double value);
443  void SetSpecular(double value) { this->SetSpecular(0, value); }
444  double GetSpecular(int index);
445  double GetSpecular() { return this->GetSpecular(0); }
447 
449 
452  void SetSpecularPower(int index, double value);
453  void SetSpecularPower(double value) { this->SetSpecularPower(0, value); }
454  double GetSpecularPower(int index);
455  double GetSpecularPower() { return this->GetSpecularPower(0); }
457 
463 
465 
472 
480  void UpdateMTimes();
481 
488 
495 
502 
509 
511 
520  vtkSetMacro(UseClippedVoxelIntensity, int);
521  vtkGetMacro(UseClippedVoxelIntensity, int);
522  vtkBooleanMacro(UseClippedVoxelIntensity, int);
524 
526 
535  vtkSetMacro(ClippedVoxelIntensity, double);
536  vtkGetMacro(ClippedVoxelIntensity, double);
538 
540 
543  void SetLabelColor(int label, vtkColorTransferFunction* function);
546 
548 
551  void SetLabelScalarOpacity(int label, vtkPiecewiseFunction* function);
554 
556 
559  void SetLabelGradientOpacity(int label, vtkPiecewiseFunction* function);
562 
567  vtkGetMacro(LabelColorMTime, vtkTimeStamp);
568 
573  vtkGetMacro(LabelScalarOpacityMTime, vtkTimeStamp);
574 
579  vtkGetMacro(LabelGradientOpacityMTime, vtkTimeStamp);
580 
585  std::size_t GetNumberOfLabels();
586 
591  std::set<int> GetLabelMapLabels();
592 
593 protected:
595  ~vtkVolumeProperty() override;
596 
603 
605 
607  double ComponentWeight[VTK_MAX_VRCOMP];
608 
610 
611  int ColorChannels[VTK_MAX_VRCOMP];
612 
613  vtkPiecewiseFunction* GrayTransferFunction[VTK_MAX_VRCOMP];
614  vtkTimeStamp GrayTransferFunctionMTime[VTK_MAX_VRCOMP];
615 
617  vtkTimeStamp RGBTransferFunctionMTime[VTK_MAX_VRCOMP];
618 
620  vtkTimeStamp ScalarOpacityMTime[VTK_MAX_VRCOMP];
621  double ScalarOpacityUnitDistance[VTK_MAX_VRCOMP];
622 
624  vtkTimeStamp GradientOpacityMTime[VTK_MAX_VRCOMP];
625 
626  vtkPiecewiseFunction* DefaultGradientOpacity[VTK_MAX_VRCOMP];
627  int DisableGradientOpacity[VTK_MAX_VRCOMP];
628 
630  vtkImageData* TransferFunction2D[VTK_MAX_VRCOMP];
631  vtkTimeStamp TransferFunction2DMTime[VTK_MAX_VRCOMP];
632 
636 
637  int Shade[VTK_MAX_VRCOMP];
638  double Ambient[VTK_MAX_VRCOMP];
639  double Diffuse[VTK_MAX_VRCOMP];
640  double Specular[VTK_MAX_VRCOMP];
641  double SpecularPower[VTK_MAX_VRCOMP];
642 
645 
650 
655 
659  std::unordered_map<int, vtkColorTransferFunction*> LabelColor;
660  std::unordered_map<int, vtkPiecewiseFunction*> LabelScalarOpacity;
661  std::unordered_map<int, vtkPiecewiseFunction*> LabelGradientOpacity;
662  std::set<int> LabelMapLabels;
663 
664 private:
665  vtkVolumeProperty(const vtkVolumeProperty&) = delete;
666  void operator=(const vtkVolumeProperty&) = delete;
667 };
668 
673 {
675  {
676  return "Nearest Neighbor";
677  }
679  {
680  return "Linear";
681  }
682  return "Unknown";
683 }
684 
685 #endif
vtkVolumeProperty::SetTransferFunction2D
void SetTransferFunction2D(int index, vtkImageData *function)
Set/Get a 2D transfer function.
vtkVolumeProperty::SetScalarOpacityUnitDistance
void SetScalarOpacityUnitDistance(int index, double distance)
Set/Get the unit distance on which the scalar opacity transfer function is defined.
vtkVolumeProperty::GetSpecular
double GetSpecular(int index)
Set/Get the specular lighting coefficient.
vtkVolumeProperty::SetLabelGradientOpacity
void SetLabelGradientOpacity(int label, vtkPiecewiseFunction *function)
Set/Get the gradient opacity function for a label in the label map.
vtkVolumeProperty::GetScalarOpacity
vtkPiecewiseFunction * GetScalarOpacity(int index)
Get the scalar opacity transfer function for the given component.
vtkVolumeProperty::DisableGradientOpacityOn
virtual void DisableGradientOpacityOn(int index)
Enable/Disable the gradient opacity function for the given component.
Definition: vtkVolumeProperty.h:354
vtkVolumeProperty::LabelColorMTime
vtkTimeStamp LabelColorMTime
Definition: vtkVolumeProperty.h:633
vtkVolumeProperty::DisableGradientOpacityOff
virtual void DisableGradientOpacityOff()
Enable/Disable the gradient opacity function for the given component.
Definition: vtkVolumeProperty.h:357
vtkVolumeProperty::GetSpecular
double GetSpecular()
Set/Get the specular lighting coefficient.
Definition: vtkVolumeProperty.h:445
vtkVolumeProperty::SetScalarOpacityUnitDistance
void SetScalarOpacityUnitDistance(double distance)
Set/Get the unit distance on which the scalar opacity transfer function is defined.
Definition: vtkVolumeProperty.h:288
vtkVolumeProperty::GetGradientOpacity
vtkPiecewiseFunction * GetGradientOpacity()
Definition: vtkVolumeProperty.h:342
vtkVolumeProperty::SetDiffuse
void SetDiffuse(int index, double value)
Set/Get the diffuse lighting coefficient.
vtkVolumeProperty::SetGradientOpacity
void SetGradientOpacity(int index, vtkPiecewiseFunction *function)
Set the opacity of a volume to an opacity transfer function based on gradient magnitude for the given...
vtkVolumeProperty::GetNumberOfLabels
std::size_t GetNumberOfLabels()
Get the number of labels that are provided with transfer functions using either SetLabelColor,...
vtkX3D::value
@ value
Definition: vtkX3D.h:226
vtkVolumeProperty::GetIsoSurfaceValues
vtkContourValues * GetIsoSurfaceValues()
Get contour values for isosurface blending mode.
vtkVolumeProperty::GetGrayTransferFunction
vtkPiecewiseFunction * GetGrayTransferFunction()
Definition: vtkVolumeProperty.h:255
vtkVolumeProperty::GetComponentWeight
virtual double GetComponentWeight(int index)
Set/Get the scalar component weights.
vtkVolumeProperty::GetScalarOpacityUnitDistance
double GetScalarOpacityUnitDistance(int index)
Set/Get the unit distance on which the scalar opacity transfer function is defined.
vtkVolumeProperty::New
static vtkVolumeProperty * New()
vtkVolumeProperty::SetAmbient
void SetAmbient(int index, double value)
Set/Get the ambient lighting coefficient.
vtkVolumeProperty::SliceFunction
vtkSmartPointer< vtkImplicitFunction > SliceFunction
Function used for slice.
Definition: vtkVolumeProperty.h:654
vtkTimeStamp
record modification and/or execution time
Definition: vtkTimeStamp.h:52
vtkVolumeProperty::GetShade
int GetShade()
Set/Get the shading of a volume.
Definition: vtkVolumeProperty.h:411
vtkVolumeProperty::GetRGBTransferFunction
vtkColorTransferFunction * GetRGBTransferFunction()
Definition: vtkVolumeProperty.h:263
vtkVolumeProperty::SetSpecularPower
void SetSpecularPower(double value)
Set/Get the specular power.
Definition: vtkVolumeProperty.h:453
vtkVolumeProperty::GetMTime
vtkMTimeType GetMTime() override
Get the modified time for this object (or the properties registered with this object).
vtkVolumeProperty::vtkGetSmartPointerMacro
vtkGetSmartPointerMacro(SliceFunction, vtkImplicitFunction)
Get/Set the function used for slicing.
vtkVolumeProperty::ShadeOff
void ShadeOff(int index)
Set/Get the shading of a volume.
vtkVolumeProperty::SetColor
void SetColor(vtkColorTransferFunction *function)
Definition: vtkVolumeProperty.h:240
vtkVolumeProperty::DisableGradientOpacityOn
virtual void DisableGradientOpacityOn()
Enable/Disable the gradient opacity function for the given component.
Definition: vtkVolumeProperty.h:355
vtkSmartPointer< vtkImplicitFunction >
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:82
vtkVolumeProperty::SetShade
void SetShade(int index, int value)
Set/Get the shading of a volume.
vtkVolumeProperty::vtkVolumeProperty
vtkVolumeProperty()
vtkVolumeProperty::ClippedVoxelIntensity
double ClippedVoxelIntensity
Definition: vtkVolumeProperty.h:643
vtkVolumeProperty::GetRGBTransferFunctionMTime
vtkTimeStamp GetRGBTransferFunctionMTime()
Definition: vtkVolumeProperty.h:501
vtkVolumeProperty::SetScalarOpacity
void SetScalarOpacity(vtkPiecewiseFunction *function)
Definition: vtkVolumeProperty.h:270
vtkVolumeProperty::SetComponentWeight
virtual void SetComponentWeight(int index, double value)
Set/Get the scalar component weights.
vtkVolumeProperty::GetTransferFunction2D
vtkImageData * GetTransferFunction2D()
Color-opacity transfer function mode.
Definition: vtkVolumeProperty.h:314
vtkVolumeProperty::IndependentComponents
vtkTypeBool IndependentComponents
Definition: vtkVolumeProperty.h:606
VTK_NEAREST_INTERPOLATION
#define VTK_NEAREST_INTERPOLATION
Definition: vtkSystemIncludes.h:94
vtkColorTransferFunction
Defines a transfer function for mapping a property to an RGB color value.
Definition: vtkColorTransferFunction.h:164
vtkVolumeProperty::SetGradientOpacity
void SetGradientOpacity(vtkPiecewiseFunction *function)
Definition: vtkVolumeProperty.h:301
vtkVolumeProperty::GetScalarOpacityMTime
vtkTimeStamp GetScalarOpacityMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time that the scalar opacity transfer...
vtkVolumeProperty::GetRGBTransferFunctionMTime
vtkTimeStamp GetRGBTransferFunctionMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time that the RGBTransferFunction was...
vtkVolumeProperty::GetScalarOpacity
vtkPiecewiseFunction * GetScalarOpacity()
Definition: vtkVolumeProperty.h:278
vtkVolumeProperty::GetScalarOpacityUnitDistance
double GetScalarOpacityUnitDistance()
Set/Get the unit distance on which the scalar opacity transfer function is defined.
Definition: vtkVolumeProperty.h:293
vtkVolumeProperty::HasLabelGradientOpacity
bool HasLabelGradientOpacity()
Definition: vtkVolumeProperty.h:385
vtkVolumeProperty::GetLabelMapLabels
std::set< int > GetLabelMapLabels()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get access to the internal set that keeps tra...
vtkImplicitFunction
abstract interface for implicit functions
Definition: vtkImplicitFunction.h:80
vtkVolumeProperty::GetRGBTransferFunction
vtkColorTransferFunction * GetRGBTransferFunction(int index)
Get the RGB transfer function for the given component.
vtkVolumeProperty::ShadeOn
void ShadeOn(int index)
Set/Get the shading of a volume.
vtkVolumeProperty::GetScalarOpacityMTime
vtkTimeStamp GetScalarOpacityMTime()
Definition: vtkVolumeProperty.h:494
vtkVolumeProperty::LabelGradientOpacity
std::unordered_map< int, vtkPiecewiseFunction * > LabelGradientOpacity
Definition: vtkVolumeProperty.h:661
vtkVolumeProperty::GetShade
int GetShade(int index)
Set/Get the shading of a volume.
vtkVolumeProperty::InterpolationType
int InterpolationType
Definition: vtkVolumeProperty.h:609
vtkVolumeProperty::SetColor
void SetColor(vtkPiecewiseFunction *function)
Definition: vtkVolumeProperty.h:231
vtkVolumeProperty::DeepCopy
void DeepCopy(vtkVolumeProperty *p)
vtkVolumeProperty::GetSpecularPower
double GetSpecularPower(int index)
Set/Get the specular power.
vtkVolumeProperty::HasGradientOpacity
bool HasGradientOpacity(int index=0)
Check whether or not we have the gradient opacity.
Definition: vtkVolumeProperty.h:370
vtkVolumeProperty::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkVolumeProperty::GetTransferFunction2D
vtkImageData * GetTransferFunction2D(int index)
Color-opacity transfer function mode.
vtkVolumeProperty::GetGrayTransferFunction
vtkPiecewiseFunction * GetGrayTransferFunction(int index)
Get the gray transfer function.
vtkContourValues
helper object to manage setting and generating contour values
Definition: vtkContourValues.h:55
vtkVolumeProperty::TransferMode
TransferMode
Color-opacity transfer function mode.
Definition: vtkVolumeProperty.h:324
vtkVolumeProperty::SetSpecular
void SetSpecular(int index, double value)
Set/Get the specular lighting coefficient.
vtkVolumeProperty::TransferFunctionMode
int TransferFunctionMode
Definition: vtkVolumeProperty.h:629
vtkVolumeProperty::GetStoredGradientOpacity
vtkPiecewiseFunction * GetStoredGradientOpacity()
Enable/Disable the gradient opacity function for the given component.
Definition: vtkVolumeProperty.h:361
vtkImageData
topologically and geometrically regular array of data
Definition: vtkImageData.h:157
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:113
vtkSmartPointer.h
vtkVolumeProperty::SetColor
void SetColor(int index, vtkColorTransferFunction *function)
Set the color of a volume to an RGB transfer function for the component indicated by index.
vtkVolumeProperty::ShadeOff
void ShadeOff()
Set/Get the shading of a volume.
Definition: vtkVolumeProperty.h:415
vtkVolumeProperty::GetGrayTransferFunctionMTime
vtkTimeStamp GetGrayTransferFunctionMTime()
Definition: vtkVolumeProperty.h:508
vtkVolumeProperty::SetColor
void SetColor(int index, vtkPiecewiseFunction *function)
Set the color of a volume to a gray level transfer function for the component indicated by index.
vtkNew< vtkContourValues >
vtkVolumeProperty::~vtkVolumeProperty
~vtkVolumeProperty() override
vtkVolumeProperty::GetColorChannels
int GetColorChannels()
Definition: vtkVolumeProperty.h:247
VTK_LINEAR_INTERPOLATION
#define VTK_LINEAR_INTERPOLATION
Definition: vtkSystemIncludes.h:95
vtkVolumeProperty::SetDisableGradientOpacity
virtual void SetDisableGradientOpacity(int value)
Enable/Disable the gradient opacity function for the given component.
Definition: vtkVolumeProperty.h:353
vtkVolumeProperty::GetDisableGradientOpacity
virtual int GetDisableGradientOpacity(int index)
Enable/Disable the gradient opacity function for the given component.
vtkVolumeProperty::SetSpecular
void SetSpecular(double value)
Set/Get the specular lighting coefficient.
Definition: vtkVolumeProperty.h:443
vtkVolumeProperty::UseClippedVoxelIntensity
int UseClippedVoxelIntensity
Definition: vtkVolumeProperty.h:644
vtkVolumeProperty::GetInterpolationTypeAsString
const char * GetInterpolationTypeAsString(void)
Return the interpolation type as a descriptive character string.
Definition: vtkVolumeProperty.h:672
vtkVolumeProperty::LabelScalarOpacityMTime
vtkTimeStamp LabelScalarOpacityMTime
Definition: vtkVolumeProperty.h:634
vtkObject.h
vtkPiecewiseFunction
Defines a 1D piecewise function.
Definition: vtkPiecewiseFunction.h:145
vtkVolumeProperty::SetScalarOpacity
void SetScalarOpacity(int index, vtkPiecewiseFunction *function)
Set the opacity of a volume to an opacity transfer function based on scalar value for the component i...
vtkVolumeProperty::GetColorChannels
int GetColorChannels(int index)
Get the number of color channels in the transfer function for the given component.
vtkVolumeProperty::SetSpecularPower
void SetSpecularPower(int index, double value)
Set/Get the specular power.
vtkVolumeProperty::SetLabelScalarOpacity
void SetLabelScalarOpacity(int label, vtkPiecewiseFunction *function)
Set/Get the opacity transfer function for a label in the label map.
vtkVolumeProperty::GetLabelColor
vtkColorTransferFunction * GetLabelColor(int label)
Set/Get the color transfer function for a label in the label map.
vtkVolumeProperty::GetTransferFunction2DMTime
vtkTimeStamp GetTransferFunction2DMTime()
Definition: vtkVolumeProperty.h:602
vtkVolumeProperty::GetGradientOpacityMTime
vtkTimeStamp GetGradientOpacityMTime()
Definition: vtkVolumeProperty.h:487
vtkVolumeProperty::GetTransferFunction2DMTime
vtkTimeStamp GetTransferFunction2DMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time when the TransferFunction2D was ...
vtkNew.h
vtkVolumeProperty::DisableGradientOpacityOff
virtual void DisableGradientOpacityOff(int index)
Enable/Disable the gradient opacity function for the given component.
Definition: vtkVolumeProperty.h:356
vtkVolumeProperty::GetGradientOpacityMTime
vtkTimeStamp GetGradientOpacityMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time that the gradient opacity transf...
vtkVolumeProperty::GetStoredGradientOpacity
vtkPiecewiseFunction * GetStoredGradientOpacity(int index)
Enable/Disable the gradient opacity function for the given component.
vtkVolumeProperty::SetInterpolationTypeToNearest
void SetInterpolationTypeToNearest()
Set the interpolation type for sampling a volume.
Definition: vtkVolumeProperty.h:211
vtkVolumeProperty::GetGrayTransferFunctionMTime
vtkTimeStamp GetGrayTransferFunctionMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time that the GrayTransferFunction wa...
vtkImplicitFunction.h
vtkVolumeProperty::GetDisableGradientOpacity
virtual int GetDisableGradientOpacity()
Enable/Disable the gradient opacity function for the given component.
Definition: vtkVolumeProperty.h:359
vtkVolumeProperty::LabelGradientOpacityMTime
vtkTimeStamp LabelGradientOpacityMTime
Definition: vtkVolumeProperty.h:635
vtkVolumeProperty::UpdateMTimes
void UpdateMTimes()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE UpdateMTimes performs a Modified() on all Tim...
vtkVolumeProperty::SetShade
void SetShade(int value)
Set/Get the shading of a volume.
Definition: vtkVolumeProperty.h:409
vtkVolumeProperty::LabelMapLabels
std::set< int > LabelMapLabels
Definition: vtkVolumeProperty.h:662
vtkVolumeProperty::GetLabelScalarOpacity
vtkPiecewiseFunction * GetLabelScalarOpacity(int label)
Set/Get the opacity transfer function for a label in the label map.
vtkVolumeProperty::CreateDefaultGradientOpacity
virtual void CreateDefaultGradientOpacity(int index)
vtkVolumeProperty::vtkSetSmartPointerMacro
vtkSetSmartPointerMacro(SliceFunction, vtkImplicitFunction)
Get/Set the function used for slicing.
vtkVolumeProperty::LabelColor
std::unordered_map< int, vtkColorTransferFunction * > LabelColor
Label map transfer functions.
Definition: vtkVolumeProperty.h:659
vtkVolumeProperty::IsoSurfaceValues
vtkNew< vtkContourValues > IsoSurfaceValues
Contour values for isosurface blend mode.
Definition: vtkVolumeProperty.h:649
vtkVolumeProperty::SetInterpolationTypeToLinear
void SetInterpolationTypeToLinear()
Set the interpolation type for sampling a volume.
Definition: vtkVolumeProperty.h:212
vtkX3D::index
@ index
Definition: vtkX3D.h:252
vtkVolumeProperty::SetTransferFunction2D
void SetTransferFunction2D(vtkImageData *function)
Color-opacity transfer function mode.
Definition: vtkVolumeProperty.h:311
vtkVolumeProperty::SetLabelColor
void SetLabelColor(int label, vtkColorTransferFunction *function)
Set/Get the color transfer function for a label in the label map.
vtkVolumeProperty::GetDiffuse
double GetDiffuse(int index)
Set/Get the diffuse lighting coefficient.
vtkVolumeProperty::GetLabelGradientOpacity
vtkPiecewiseFunction * GetLabelGradientOpacity(int label)
Set/Get the gradient opacity function for a label in the label map.
vtkVolumeProperty::GetAmbient
double GetAmbient()
Set/Get the ambient lighting coefficient.
Definition: vtkVolumeProperty.h:425
vtkVolumeProperty::LabelScalarOpacity
std::unordered_map< int, vtkPiecewiseFunction * > LabelScalarOpacity
Definition: vtkVolumeProperty.h:660
vtkVolumeProperty::GetSpecularPower
double GetSpecularPower()
Set/Get the specular power.
Definition: vtkVolumeProperty.h:455
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:69
vtkVolumeProperty::GetGradientOpacity
vtkPiecewiseFunction * GetGradientOpacity(int index)
Get the gradient magnitude opacity transfer function for the given component.
vtkVolumeProperty::SetDisableGradientOpacity
virtual void SetDisableGradientOpacity(int index, int value)
Enable/Disable the gradient opacity function for the given component.
vtkVolumeProperty::GetDiffuse
double GetDiffuse()
Set/Get the diffuse lighting coefficient.
Definition: vtkVolumeProperty.h:435
vtkVolumeProperty
represents the common properties for rendering a volume.
Definition: vtkVolumeProperty.h:164
vtkVolumeProperty::GetAmbient
double GetAmbient(int index)
Set/Get the ambient lighting coefficient.
vtkVolumeProperty::ShadeOn
void ShadeOn()
Set/Get the shading of a volume.
Definition: vtkVolumeProperty.h:413
vtkMTimeType
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287
vtkVolumeProperty::SetAmbient
void SetAmbient(double value)
Set/Get the ambient lighting coefficient.
Definition: vtkVolumeProperty.h:423
VTK_MAX_VRCOMP
#define VTK_MAX_VRCOMP
Definition: vtkSystemIncludes.h:105
vtkVolumeProperty::SetDiffuse
void SetDiffuse(double value)
Set/Get the diffuse lighting coefficient.
Definition: vtkVolumeProperty.h:433