Go to the documentation of this file.
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); \
220 int ImageViewportSize[2];
226 int ImageMemorySize[2];
232 int ImageInUseSize[2];
257 int ZBufferOrigin[2];
float RetrieveRenderTime(vtkRenderer *ren, vtkVolume *vol)
vtkRayCastImageDisplayHelper * ImageDisplayHelper
Abstract class for a volume mapper.
GLsizei GLsizei GLenum GLenum const GLvoid * data
#define vtkGetObjectMacro(name, type)
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 *)
helper class that draws the image to the screen
vtkTransform * PerspectiveTransform
double WorldSampleDistance
virtual void SetVolumeRayCastFunction(vtkVolumeRayCastFunction *)
#define vtkTypeMacro(thisClass, superclass)
GLint GLint GLint GLint GLint x
int ClipRayAgainstVolume(vtkVolumeRayCastDynamicInfo *dynamicInfo, float bounds[6])
virtual float GetGradientMagnitudeScale()
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)
#define vtkSetClampMacro(name, type, min, max)
int ClipRayAgainstClippingPlanes(vtkVolumeRayCastDynamicInfo *dynamicInfo, vtkVolumeRayCastStaticInfo *staticInfo)
int AutoAdjustSampleDistances
Compute shading tables for encoded normals.
Superclass for gradient estimation.
virtual float GetGradientMagnitudeScale()
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
virtual void ReportReferences(vtkGarbageCollector *)
vtkEncodedGradientEstimator * GradientEstimator
#define vtkGetMacro(name, type)
vtkRenderer ** RenderRendererTable
Detect and break reference loops.
#define VTK_THREAD_RETURN_TYPE
virtual float GetGradientMagnitudeScale(int)
virtual float GetGradientMagnitudeBias()
vtkBooleanMacro(IgnoreDriverBugs, bool)
vtkTransform * VoxelsToViewTransform
vtkVolume ** RenderVolumeTable
vtkSetMacro(IgnoreDriverBugs, bool)
void UpdateShadingTables(vtkRenderer *ren, vtkVolume *vol)
vtkEncodedGradientShader * GradientShader
Timer support and logging.
VTK_THREAD_RETURN_TYPE VolumeRayCastMapper_CastRays(void *arg)
GLint GLint GLint GLint GLint GLint y
static vtkVolumeRayCastMapper * New()
float GetZeroOpacityThreshold(vtkVolume *vol)
friend VTK_THREAD_RETURN_TYPE VolumeRayCastMapper_CastRays(void *arg)
void InitializeClippingPlanes(vtkVolumeRayCastStaticInfo *staticInfo, vtkPlaneCollection *planes)
abstract specification for renderers
void ReleaseGraphicsResources(vtkWindow *)
void SetNumberOfThreads(int num)
float MinimumViewDistance
#define VTKRENDERINGVOLUME_EXPORT
virtual void SetGradientEstimator(vtkEncodedGradientEstimator *gradest)
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