32 #ifndef vtkVolumeRayCastSpaceLeapingImageFilter_h
33 #define vtkVolumeRayCastSpaceLeapingImageFilter_h
35 #include "vtkRenderingVolumeModule.h"
61 vtkGetMacro( IndependentComponents,
int );
69 vtkGetMacro( ComputeGradientOpacity,
int );
78 vtkGetMacro( ComputeMinMax,
int );
88 vtkGetMacro( UpdateGradientOpacityFlags,
int );
97 {
return LastMinMaxBuildTime.GetMTime(); }
104 {
return LastMinMaxFlagTime.GetMTime(); }
115 vtkSetVector4Macro( TableShift,
float );
116 vtkGetVector4Macro( TableShift,
float );
117 vtkSetVector4Macro( TableScale,
float );
118 vtkGetVector4Macro( TableScale,
float );
119 vtkSetVector4Macro( TableSize,
int );
120 vtkGetVector4Macro( TableSize,
int );
127 int GetNumberOfIndependentComponents();
137 unsigned short * GetMinMaxVolume(
int dims[4] );
151 static void ComputeInputExtentsForOutput(
int inExt[6],
160 unsigned short * GetMinNonZeroScalarIndex();
161 unsigned char * GetMinNonZeroGradientMagnitudeIndex();
170 void SetGradientMagnitude(
unsigned char ** gradientMagnitude );
171 unsigned char **GetGradientMagnitude();
179 void SetScalarOpacityTable(
int c,
unsigned short * t);
180 void SetGradientOpacityTable(
int c,
unsigned short * t );
188 vtkIdType ComputeOffset(
const int ext[6],
const int wholeExt[6],
213 unsigned short * ScalarOpacityTable[4];
214 unsigned short * GradientOpacityTable[4];
218 void InternalRequestUpdateExtent(
int *,
int*);
232 int outExt[6],
int id);
246 void ComputeFirstNonZeroOpacityIndices();
252 void FillScalarOpacityFlags(
260 void FillScalarAndGradientOpacityFlags(
int IndependentComponents
int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is called by the superclass.
record modification and/or execution time
vtkTypeUInt64 vtkMTimeType
int ComputeGradientOpacity
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Subclasses can reimplement this method to translate the update extent requests from each output port ...
vtkTimeStamp LastMinMaxBuildTime
Builds the space leaping data structure.
virtual void AllocateOutputData(vtkImageData *out, vtkInformation *outInfo, int *uExtent)
Allocate the output data.
Generic filter that has one input.
vtkMTimeType GetLastMinMaxBuildTime()
Get the last execution time.
a simple class to control print indentation
topologically and geometrically regular array of data
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Subclasses can reimplement this method to collect information from their inputs and set information f...
vtkTimeStamp LastMinMaxFlagTime
abstract superclass for arrays of numeric data
unsigned char ** GradientMagnitude
virtual void ThreadedRequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector, vtkImageData ***inData, vtkImageData **outData, int extent[6], int threadId)
If the subclass does not define an Execute method, then the task will be broken up, multiple threads will be spawned, and each thread will call this method.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkMTimeType GetLastMinMaxFlagTime()
Get the last execution time.
int UpdateGradientOpacityFlags
unsigned short * MinNonZeroScalarIndex
static vtkAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
unsigned char * MinNonZeroGradientMagnitudeIndex
general representation of visualization data
vtkDataArray * CurrentScalars