46 #ifndef vtkUnstructuredGridLinearRayIntegrator_h
47 #define vtkUnstructuredGridLinearRayIntegrator_h
49 #include "vtkRenderingVolumeModule.h"
52 class vtkLinearRayIntegratorTransferFunction;
75 static void IntegrateRay(
double length,
76 double intensity_front,
double attenuation_front,
77 double intensity_back,
double attenuation_back,
79 static void IntegrateRay(
double length,
80 const double color_front[3],
81 double attenuation_front,
82 const double color_back[3],
83 double attenuation_back,
91 static float Psi(
float length,
92 float attenuation_front,
float attenuation_back);
109 #endif //vtkUnstructuredGridLinearRayIntegrator_h
represents a volume (data & properties) in a rendered scene
virtual void Initialize(vtkVolume *volume, vtkDataArray *scalars)=0
Set up the integrator with the given properties and scalars.
record modification and/or execution time
vtkVolumeProperty * Property
dynamic, self-adjusting array of double
a superclass for volume ray integration functions
a simple class to control print indentation
abstract superclass for arrays of numeric data
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
represents the common properties for rendering a volume.
int NumIndependentComponents
vtkLinearRayIntegratorTransferFunction * TransferFunctions
performs piecewise linear ray integration.
vtkTimeStamp TransferFunctionsModified
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
virtual void Integrate(vtkDoubleArray *intersectionLengths, vtkDataArray *nearIntersections, vtkDataArray *farIntersections, float color[4])=0
Given a set of intersections (defined by the three arrays), compute the peicewise integration of the ...