47#ifndef vtkUnstructuredGridPreIntegration_h
48#define vtkUnstructuredGridPreIntegration_h
50#include "vtkRenderingVolumeModule.h"
84 vtkGetMacro(IntegrationTableScalarResolution,
int);
86 vtkGetMacro(IntegrationTableLengthResolution,
int);
105 vtkGetMacro(IncrementalPreIntegration,
int);
127 float *GetTableEntry(
double scalar_front,
double scalar_back,
double lenth,
135 float *GetIndexedTableEntry(
int scalar_front_index,
int scalar_back_index,
168 int scalar_front_index,
169 int scalar_back_index,
176 if (scalar_front_index < 0) scalar_front_index = 0;
179 if (scalar_back_index < 0) scalar_back_index = 0;
182 if (length_index < 0) length_index = 0;
190 + scalar_front_index));
196 int sfi =
static_cast<int>( scalar_front
abstract superclass for arrays of numeric data
dynamic, self-adjusting array of double
a simple class to control print indentation
record modification and/or execution time
performs ray integration with pre-integration tables.
vtkTimeStamp IntegrationTableBuilt
virtual void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
float * GetIndexedTableEntry(int scalar_front_index, int scalar_back_index, int length_index, int component=0)
Like GetTableEntry, except the inputs are scaled indices into the table rather than than the actual s...
double IntegrationTableLengthScale
static vtkUnstructuredGridPreIntegration * New()
double * IntegrationTableScalarShift
virtual double GetIntegrationTableScalarScale(int component=0)
int IntegrationTableLengthResolution
float * GetTableEntry(double scalar_front, double scalar_back, double lenth, int component=0)
Get an entry (RGBA) in one of the pre-integration tables.
int IntegrationTableScalarResolution
vtkVolumeProperty * Property
virtual double GetIntegrationTableScalarShift(int component=0)
Get how an integration table is indexed.
float ** IntegrationTable
virtual double GetIntegrationTableLengthScale()
virtual float * GetPreIntegrationTable(int component=0)
Get the partial pre-integration table for the given scalar component.
int IncrementalPreIntegration
virtual void BuildPreIntegrationTables(vtkDataArray *scalars)
double * IntegrationTableScalarScale
vtkUnstructuredGridPreIntegration()
~vtkUnstructuredGridPreIntegration()
virtual void SetIntegrator(vtkUnstructuredGridVolumeRayIntegrator *)
virtual void Integrate(vtkDoubleArray *intersectionLengths, vtkDataArray *nearIntersections, vtkDataArray *farIntersections, float color[4])
Given a set of intersections (defined by the three arrays), compute the peicewise integration of the ...
virtual void Initialize(vtkVolume *volume, vtkDataArray *scalars)
Set up the integrator with the given properties and scalars.
vtkUnstructuredGridVolumeRayIntegrator * Integrator
a superclass for volume ray integration functions
represents the common properties for rendering a volume.
represents a volume (data & properties) in a rendered scene
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.