55 #ifndef vtkVolumeProperty_h
56 #define vtkVolumeProperty_h
61 #include "vtkRenderingCoreModule.h"
66 #include <unordered_map>
121 vtkGetMacro(InterpolationType,
int);
124 const char* GetInterpolationTypeAsString(
void);
201 this->SetScalarOpacityUnitDistance(0, distance);
240 vtkSetClampMacro(TransferFunctionMode,
int, 0, 1);
241 vtkGetMacro(TransferFunctionMode,
int);
283 switch (this->TransferFunctionMode)
286 return (this->GradientOpacity[
index] !=
nullptr);
431 vtkSetMacro(UseClippedVoxelIntensity,
int);
432 vtkGetMacro(UseClippedVoxelIntensity,
int);
433 vtkBooleanMacro(UseClippedVoxelIntensity,
int);
446 vtkSetMacro(ClippedVoxelIntensity,
double);
447 vtkGetMacro(ClippedVoxelIntensity,
double);
570 std::unordered_map<int, vtkColorTransferFunction*>
LabelColor;
588 return "Nearest Neighbor";
Defines a transfer function for mapping a property to an RGB color value.
helper object to manage setting and generating contour values
topologically and geometrically regular array of data
abstract interface for implicit functions
a simple class to control print indentation
abstract base class for most VTK objects
Defines a 1D piecewise function.
record modification and/or execution time
represents the common properties for rendering a volume.
void SetSpecular(int index, double value)
Set/Get the specular lighting coefficient.
void SetDiffuse(double value)
vtkPiecewiseFunction * GetGrayTransferFunction(int index)
Get the gray transfer function.
void SetAmbient(int index, double value)
Set/Get the ambient lighting coefficient.
std::set< int > GetLabelMapLabels()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get access to the internal set that keeps tra...
vtkMTimeType GetMTime() override
Get the modified time for this object (or the properties registered with this object).
vtkContourValues * GetIsoSurfaceValues()
Get contour values for isosurface blending mode.
double GetAmbient(int index)
virtual double GetComponentWeight(int index)
vtkTimeStamp LabelGradientOpacityMTime
vtkTimeStamp GetRGBTransferFunctionMTime()
void SetShade(int index, int value)
Set/Get the shading of a volume.
void SetScalarOpacityUnitDistance(double distance)
void SetLabelScalarOpacity(int label, vtkPiecewiseFunction *function)
Set/Get the opacity transfer function for a label in the label map.
std::size_t GetNumberOfLabels()
Get the number of labels that are provided with transfer functions using either SetLabelColor,...
static vtkVolumeProperty * New()
virtual int GetDisableGradientOpacity(int index)
void SetTransferFunction2D(vtkImageData *function)
void SetSpecular(double value)
vtkColorTransferFunction * GetLabelColor(int label)
void SetColor(vtkPiecewiseFunction *function)
vtkTimeStamp GetGrayTransferFunctionMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time that the GrayTransferFunction wa...
vtkPiecewiseFunction * GetStoredGradientOpacity(int index)
vtkTimeStamp LabelColorMTime
vtkGetSmartPointerMacro(SliceFunction, vtkImplicitFunction)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkSmartPointer< vtkImplicitFunction > SliceFunction
Function used for slice.
double GetSpecularPower(int index)
vtkImageData * GetTransferFunction2D(int index)
void SetTransferFunction2D(int index, vtkImageData *function)
Set/Get a 2D transfer function.
vtkColorTransferFunction * GetRGBTransferFunction(int index)
Get the RGB transfer function for the given component.
vtkTimeStamp GetScalarOpacityMTime()
vtkPiecewiseFunction * GetStoredGradientOpacity()
void SetGradientOpacity(int index, vtkPiecewiseFunction *function)
Set the opacity of a volume to an opacity transfer function based on gradient magnitude for the given...
double GetSpecularPower()
virtual void DisableGradientOpacityOn(int index)
void SetSpecularPower(double value)
double GetScalarOpacityUnitDistance()
vtkPiecewiseFunction * GetLabelGradientOpacity(int label)
double ClippedVoxelIntensity
virtual void DisableGradientOpacityOff(int index)
void SetScalarOpacityUnitDistance(int index, double distance)
Set/Get the unit distance on which the scalar opacity transfer function is defined.
bool HasLabelGradientOpacity()
std::unordered_map< int, vtkPiecewiseFunction * > LabelScalarOpacity
int UseClippedVoxelIntensity
virtual void SetComponentWeight(int index, double value)
Set/Get the scalar component weights.
virtual void SetDisableGradientOpacity(int index, int value)
Enable/Disable the gradient opacity function for the given component.
vtkTypeBool IndependentComponents
void SetAmbient(double value)
vtkTimeStamp GetGrayTransferFunctionMTime()
std::set< int > LabelMapLabels
virtual void DisableGradientOpacityOff()
virtual void SetDisableGradientOpacity(int value)
void SetLabelColor(int label, vtkColorTransferFunction *function)
Set/Get the color transfer function for a label in the label map.
vtkPiecewiseFunction * GetScalarOpacity()
void UpdateMTimes()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE UpdateMTimes performs a Modified() on all Tim...
void SetInterpolationTypeToNearest()
int GetColorChannels(int index)
Get the number of color channels in the transfer function for the given component.
vtkImageData * GetTransferFunction2D()
const char * GetInterpolationTypeAsString(void)
Return the interpolation type as a descriptive character string.
virtual void DisableGradientOpacityOn()
void DeepCopy(vtkVolumeProperty *p)
TransferMode
Color-opacity transfer function mode.
vtkPiecewiseFunction * GetGradientOpacity(int index)
Get the gradient magnitude opacity transfer function for the given component.
vtkTimeStamp GetRGBTransferFunctionMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time that the RGBTransferFunction was...
void SetLabelGradientOpacity(int label, vtkPiecewiseFunction *function)
Set/Get the gradient opacity function for a label in the label map.
bool HasGradientOpacity(int index=0)
Check whether or not we have the gradient opacity.
void SetSpecularPower(int index, double value)
Set/Get the specular power.
vtkTimeStamp GetTransferFunction2DMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time when the TransferFunction2D was ...
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...
void SetColor(int index, vtkColorTransferFunction *function)
Set the color of a volume to an RGB transfer function for the component indicated by index.
vtkNew< vtkContourValues > IsoSurfaceValues
Contour values for isosurface blend mode.
vtkPiecewiseFunction * GetScalarOpacity(int index)
Get the scalar opacity transfer function for the given component.
std::unordered_map< int, vtkColorTransferFunction * > LabelColor
Label map transfer functions.
vtkTimeStamp GetTransferFunction2DMTime()
void SetColor(int index, vtkPiecewiseFunction *function)
Set the color of a volume to a gray level transfer function for the component indicated by index.
vtkColorTransferFunction * GetRGBTransferFunction()
void SetInterpolationTypeToLinear()
vtkPiecewiseFunction * GetLabelScalarOpacity(int label)
std::unordered_map< int, vtkPiecewiseFunction * > LabelGradientOpacity
vtkPiecewiseFunction * GetGrayTransferFunction()
void SetGradientOpacity(vtkPiecewiseFunction *function)
vtkSetSmartPointerMacro(SliceFunction, vtkImplicitFunction)
Get/Set the function used for slicing.
void SetScalarOpacity(vtkPiecewiseFunction *function)
double GetDiffuse(int index)
virtual int GetDisableGradientOpacity()
void SetColor(vtkColorTransferFunction *function)
~vtkVolumeProperty() override
double GetScalarOpacityUnitDistance(int index)
vtkTimeStamp GetGradientOpacityMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time that the gradient opacity transf...
virtual void CreateDefaultGradientOpacity(int index)
vtkTimeStamp GetScalarOpacityMTime(int index)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Get the time that the scalar opacity transfer...
vtkTimeStamp GetGradientOpacityMTime()
void SetDiffuse(int index, double value)
Set/Get the diffuse lighting coefficient.
vtkTimeStamp LabelScalarOpacityMTime
vtkPiecewiseFunction * GetGradientOpacity()
double GetSpecular(int index)
#define VTK_NEAREST_INTERPOLATION
#define VTK_LINEAR_INTERPOLATION
vtkTypeUInt32 vtkMTimeType