31 #ifndef vtkVolumeRayCastMapper_h
32 #define vtkVolumeRayCastMapper_h
48 class vtkVolumeTransform;
55 #define vtkTrilinFuncMacro(v,x,y,z,a,b,c,d,e,f,g,h) \
56 t00 = a + (x)*(b-a); \
57 t01 = c + (x)*(d-c); \
58 t10 = e + (x)*(f-e); \
59 t11 = g + (x)*(h-g); \
60 t0 = t00 + (y)*(t01-t00); \
61 t1 = t10 + (y)*(t11-t10); \
78 vtkSetMacro( SampleDistance,
double );
79 vtkGetMacro( SampleDistance,
double );
104 vtkSetClampMacro( ImageSampleDistance,
double, 0.1, 100.0 );
105 vtkGetMacro( ImageSampleDistance,
double );
111 vtkSetClampMacro( MinimumImageSampleDistance,
double, 0.1, 100.0 );
112 vtkGetMacro( MinimumImageSampleDistance,
double );
118 vtkSetClampMacro( MaximumImageSampleDistance,
double, 0.1, 100.0 );
119 vtkGetMacro( MaximumImageSampleDistance,
double );
126 vtkSetClampMacro( AutoAdjustSampleDistances,
int, 0, 1 );
127 vtkGetMacro( AutoAdjustSampleDistances,
int );
128 vtkBooleanMacro( AutoAdjustSampleDistances,
int );
134 void SetNumberOfThreads(
int num );
135 int GetNumberOfThreads();
141 vtkSetClampMacro( IntermixIntersectingGeometry,
int, 0, 1 );
142 vtkGetMacro( IntermixIntersectingGeometry,
int );
143 vtkBooleanMacro( IntermixIntersectingGeometry,
int );
159 float GetZeroOpacityThreshold(
vtkVolume *vol );
220 int ImageViewportSize[2];
226 int ImageMemorySize[2];
232 int ImageInUseSize[2];
257 int ZBufferOrigin[2];
273 double GetZBufferValue(
int x,
int y );
vtkMultiThreader * Threader
represents a volume (data & properties) in a rendered scene
vtkTransform * PerspectiveTransform
vtkEncodedGradientEstimator * GradientEstimator
Abstract class for a volume mapper.
vtkMatrix4x4 * PerspectiveMatrix
represent and manipulate 4x4 transformation matrices
float MinimumViewDistance
void PrintSelf(ostream &os, vtkIndent indent)
int IntermixIntersectingGeometry
#define VTKRENDERINGVOLUME_EXPORT
double WorldSampleDistance
A class for performing multithreaded execution.
maintain a list of planes
vtkVolume ** RenderVolumeTable
abstract specification for renderers
vtkMatrix4x4 * ViewToWorldMatrix
double MinimumImageSampleDistance
vtkTransform * VoxelsTransform
Detect and break reference loops.
double MaximumImageSampleDistance
helper class that draws the image to the screen
Timer support and logging.
vtkVolumeRayCastFunction * VolumeRayCastFunction
virtual void ReportReferences(vtkGarbageCollector *)
window superclass for vtkRenderWindow
vtkMatrix4x4 * VoxelsToViewMatrix
virtual float GetGradientMagnitudeScale()
a simple class to control print indentation
a superclass for ray casting functions
vtkRenderer ** RenderRendererTable
VTK_THREAD_RETURN_TYPE VolumeRayCastMapper_CastRays(void *arg)
topologically and geometrically regular array of data
Superclass for gradient estimation.
A slow but accurate mapper for rendering volumes.
int AutoAdjustSampleDistances
Compute shading tables for encoded normals.
virtual float GetGradientMagnitudeScale(int)
virtual void Render(vtkRenderer *ren, vtkVolume *vol)=0
vtkMatrix4x4 * ViewToVoxelsMatrix
#define VTK_THREAD_RETURN_TYPE
double ImageSampleDistance
vtkMatrix4x4 * WorldToVoxelsMatrix
virtual void ReleaseGraphicsResources(vtkWindow *)
static vtkAlgorithm * New()
vtkTransform * VoxelsToViewTransform
vtkMatrix4x4 * VolumeMatrix
vtkMatrix4x4 * VoxelsToWorldMatrix
virtual float GetGradientMagnitudeBias(int)
vtkRayCastImageDisplayHelper * ImageDisplayHelper
vtkEncodedGradientShader * GradientShader
virtual float GetGradientMagnitudeBias()