120 #ifndef vtkHAVSVolumeMapper_h
121 #define vtkHAVSVolumeMapper_h
123 #include "vtkRenderingVolumeModule.h"
126 #define VTK_KBUFFER_SIZE_2 0
127 #define VTK_KBUFFER_SIZE_6 1
128 #define VTK_FIELD_LEVEL_OF_DETAIL 0
129 #define VTK_AREA_LEVEL_OF_DETAIL 1
133 class vtkDepthRadixSortUnstructuredGrid;
134 class vtkHAVSSortedFace;
149 vtkGetMacro(PartiallyRemoveNonConvexities,
bool);
157 vtkGetMacro(LevelOfDetailTargetTime,
float);
165 vtkGetMacro(LevelOfDetail,
bool);
172 void SetLevelOfDetailMethod(
int);
173 vtkGetMacro(LevelOfDetailMethod,
int);
185 vtkGetMacro(KBufferSize,
int);
206 virtual void SetGPUDataStructures(
bool) = 0;
207 vtkGetMacro(GPUDataStructures,
bool);
215 void InitializePrimitives(
vtkVolume *vol);
216 void InitializeScalars();
217 void InitializeLevelOfDetail();
218 void InitializeLookupTables(
vtkVolume *vol);
220 void FRadixSort(vtkHAVSSortedFace *array, vtkHAVSSortedFace *temp,
int lo,
int up);
221 void FRadix(
int byte,
int len, vtkHAVSSortedFace *
source, vtkHAVSSortedFace *dest,
int *count);
223 void UpdateLevelOfDetail(
float targetTime);
224 void PartialVisibilitySort(
float *eye);
225 bool CheckInitializationError();
231 UNSUPPORTED_EXTENSIONS=2,
240 double ScalarRange[2];
vtkTimeStamp ColorTransferFunctionMTime
unsigned int * InternalTriangles
#define VTK_KBUFFER_SIZE_2
represents a volume (data & properties) in a rendered scene
unsigned int NumberOfVertices
record modification and/or execution time
void SetLevelOfDetailMethodArea()
Set/get the current level-of-detail method.
virtual bool SupportedByHardware(vtkRenderer *vtkNotUsed(r))
Check hardware support for the HAVS algorithm.
unsigned int NumberOfBoundaryTriangles
abstract specification for renderers
void SetLevelOfDetailMethodField()
Set/get the current level-of-detail method.
#define VTK_FIELD_LEVEL_OF_DETAIL
vtkTimeStamp ScalarsMTime
unsigned int NumberOfInternalTriangles
a simple class to control print indentation
Abstract class for a unstructured grid volume mapper.
#define VTK_AREA_LEVEL_OF_DETAIL
#define VTK_KBUFFER_SIZE_6
float LevelOfDetailTargetTime
dataset represents arbitrary combinations of all possible cell types
vtkTimeStamp AlphaTransferFunctionMTime
unsigned int * OrderedTriangles
unsigned int NumberOfScalars
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void SetKBufferSizeTo2()
Set the kbuffer size.
float CurrentLevelOfDetail
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
bool PartiallyRemoveNonConvexities
vtkHAVSSortedFace * SortedFaces
float LevelOfDetailMaxEdgeLength
static vtkAlgorithm * New()
vtkHAVSSortedFace * RadixTemp
unsigned int * BoundaryTriangles
unsigned int LevelOfDetailTriangleCount
vtkTimeStamp UnstructuredGridMTime
void SetKBufferSizeTo6()
Set the kbuffer size.
Hardware-Assisted Visibility Sorting unstructured grid mapper.
unsigned int NumberOfTriangles
unsigned int NumberOfCells
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.