Go to the documentation of this file.
33 #ifndef vtkVolumeRayCastMapper_h
34 #define vtkVolumeRayCastMapper_h
36 #include "vtkRenderingVolumeModule.h"
49 class vtkVolumeTransform;
53 #if !defined(VTK_LEGACY_REMOVE)
59 #define vtkTrilinFuncMacro(v,x,y,z,a,b,c,d,e,f,g,h) \
60 t00 = a + (x)*(b-a); \
61 t01 = c + (x)*(d-c); \
62 t10 = e + (x)*(f-e); \
63 t11 = g + (x)*(h-g); \
64 t0 = t00 + (y)*(t01-t00); \
65 t1 = t10 + (y)*(t11-t10); \
86 vtkGetMacro( SampleDistance,
double );
119 vtkSetClampMacro( ImageSampleDistance,
double, 0.1, 100.0 );
120 vtkGetMacro( ImageSampleDistance,
double );
128 vtkSetClampMacro( MinimumImageSampleDistance,
double, 0.1, 100.0 );
129 vtkGetMacro( MinimumImageSampleDistance,
double );
137 vtkSetClampMacro( MaximumImageSampleDistance,
double, 0.1, 100.0 );
138 vtkGetMacro( MaximumImageSampleDistance,
double );
148 vtkSetClampMacro( AutoAdjustSampleDistances,
int, 0, 1 );
149 vtkGetMacro( AutoAdjustSampleDistances,
int );
167 vtkSetClampMacro( IntermixIntersectingGeometry,
int, 0, 1 );
168 vtkGetMacro( IntermixIntersectingGeometry,
int );
251 int ImageViewportSize[2];
257 int ImageMemorySize[2];
263 int ImageInUseSize[2];
288 int ZBufferOrigin[2];
310 #endif // VTK_LEGACY_REMOVE
float RetrieveRenderTime(vtkRenderer *ren, vtkVolume *vol)
vtkRayCastImageDisplayHelper * ImageDisplayHelper
Abstract class for a volume mapper.
int ComputeRowBounds(vtkVolume *vol, vtkRenderer *ren)
represents a volume (data & properties) in a rendered scene
a superclass for ray casting functions
void Render(vtkRenderer *, vtkVolume *)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Initialize rendering for this volume.
helper class that draws the image to the screen
vtkTransform * PerspectiveTransform
double WorldSampleDistance
virtual void SetVolumeRayCastFunction(vtkVolumeRayCastFunction *)
Get / Set the volume ray cast function.
void ReportReferences(vtkGarbageCollector *) override
int ClipRayAgainstVolume(vtkVolumeRayCastDynamicInfo *dynamicInfo, float bounds[6])
virtual float GetGradientMagnitudeScale()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE.
double MaximumImageSampleDistance
vtkMatrix4x4 * PerspectiveMatrix
window superclass for vtkRenderWindow
double MinimumImageSampleDistance
A slow but accurate mapper for rendering volumes.
double ImageSampleDistance
int IntermixIntersectingGeometry
A class for performing multithreaded execution.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
int ClipRayAgainstClippingPlanes(vtkVolumeRayCastDynamicInfo *dynamicInfo, vtkVolumeRayCastStaticInfo *staticInfo)
int AutoAdjustSampleDistances
Compute shading tables for encoded normals.
Superclass for gradient estimation.
virtual float GetGradientMagnitudeScale()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Values needed by the volume.
void StoreRenderTime(vtkRenderer *ren, vtkVolume *vol, float t)
vtkTransform * VoxelsTransform
vtkMatrix4x4 * VoxelsToViewMatrix
vtkMatrix4x4 * ViewToWorldMatrix
topologically and geometrically regular array of data
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
vtkVolumeRayCastFunction * VolumeRayCastFunction
vtkMatrix4x4 * ViewToVoxelsMatrix
vtkEncodedGradientEstimator * GradientEstimator
vtkRenderer ** RenderRendererTable
Detect and break reference loops.
#define VTK_THREAD_RETURN_TYPE
virtual float GetGradientMagnitudeScale(int)
virtual float GetGradientMagnitudeBias()
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkTransform * VoxelsToViewTransform
vtkVolume ** RenderVolumeTable
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
void UpdateShadingTables(vtkRenderer *ren, vtkVolume *vol)
vtkEncodedGradientShader * GradientShader
Timer support and logging.
VTK_THREAD_RETURN_TYPE VolumeRayCastMapper_CastRays(void *arg)
static vtkVolumeRayCastMapper * New()
float GetZeroOpacityThreshold(vtkVolume *vol)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Return the scalar value below which all opaci...
friend VTK_THREAD_RETURN_TYPE VolumeRayCastMapper_CastRays(void *arg)
void InitializeClippingPlanes(vtkVolumeRayCastStaticInfo *staticInfo, vtkPlaneCollection *planes)
abstract specification for renderers
void ReleaseGraphicsResources(vtkWindow *)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Release any graphics resources that are being...
void SetNumberOfThreads(int num)
Set/Get the number of threads to use.
float MinimumViewDistance
virtual void SetGradientEstimator(vtkEncodedGradientEstimator *gradest)
Set / Get the gradient estimator used to estimate normals.
maintain a list of planes
void ComputeMatrices(vtkImageData *data, vtkVolume *vol)
~vtkVolumeRayCastMapper()
double GetZBufferValue(int x, int y)
vtkMatrix4x4 * VolumeMatrix
virtual float GetGradientMagnitudeBias(int)
virtual float GetGradientMagnitudeBias()
vtkMatrix4x4 * VoxelsToWorldMatrix
vtkMatrix4x4 * WorldToVoxelsMatrix
vtkMultiThreader * Threader