Go to the documentation of this file.
27 #ifndef vtkGPUVolumeRayCastMapper_h
28 #define vtkGPUVolumeRayCastMapper_h
30 #include <vtkRenderingVolumeModule.h>
54 vtkSetClampMacro( AutoAdjustSampleDistances,
int, 0, 1 );
55 vtkGetMacro( AutoAdjustSampleDistances,
int );
65 vtkSetClampMacro( LockSampleDistanceToInputSpacing,
int, 0, 1 );
66 vtkGetMacro( LockSampleDistanceToInputSpacing,
int );
76 vtkSetClampMacro( UseJittering,
int, 0, 1 );
77 vtkGetMacro( UseJittering,
int );
90 vtkSetClampMacro( UseDepthPass,
int, 0, 1 );
91 vtkGetMacro( UseDepthPass,
int );
110 vtkGetMacro( SampleDistance,
float );
121 vtkSetClampMacro( ImageSampleDistance,
float, 0.1f, 100.0f );
122 vtkGetMacro( ImageSampleDistance,
float );
130 vtkSetClampMacro( MinimumImageSampleDistance,
float, 0.1f, 100.0f );
131 vtkGetMacro( MinimumImageSampleDistance,
float );
139 vtkSetClampMacro( MaximumImageSampleDistance,
float, 0.1f, 100.0f );
140 vtkGetMacro( MaximumImageSampleDistance,
float );
159 vtkGetMacro( FinalColorWindow,
float );
161 vtkGetMacro( FinalColorLevel,
float );
180 vtkSetClampMacro( MaxMemoryFraction,
float, 0.1f, 1.0f );
181 vtkGetMacro( MaxMemoryFraction,
float );
194 vtkGetMacro(ReportProgress,
bool);
213 double viewDirection[3],
242 enum { BinaryMaskType = 0, LabelMapMaskType };
250 vtkGetMacro( MaskType,
int );
264 vtkSetClampMacro(MaskBlendFactor,
float,0.0f,1.0f);
265 vtkGetMacro(MaskBlendFactor,
float);
284 vtkGetMacro(RenderToImage,
int);
295 vtkGetMacro(DepthImageScalarType,
int);
314 vtkGetMacro(ClampDepthToBackface,
int);
383 double datasetBounds[6],
384 double scalarRange[2],
385 int numberOfScalarComponents,
386 unsigned int numberOfLevels)=0;
391 unsigned int level)=0;
394 int numberOfScalarComponents)=0;
445 vtkSetClampMacro(AMRMode,
int,0,1);
446 vtkGetMacro(AMRMode,
int);
473 double ClippedCroppingRegionPlanes[6];
static vtkGPUVolumeRayCastMapper * New()
int GeneratingCanonicalView
Abstract class for a volume mapper.
virtual void GetDepthImage(vtkImageData *)
Low level API to export the depth texture as vtkImageData in RenderToImage mode.
virtual void PreRender(vtkRenderer *ren, vtkVolume *vol, double datasetBounds[6], double scalarRange[2], int numberOfScalarComponents, unsigned int numberOfLevels)=0
void SetMaskInput(vtkImageData *mask)
Optionally, set a mask input.
void SetMaskTypeToBinary()
int LockSampleDistanceToInputSpacing
void Render(vtkRenderer *, vtkVolume *)
Initialize rendering for this volume.
represents a volume (data & properties) in a rendered scene
void SetCellFlag(int cellFlag)
Called by the AMR Volume Mapper.
vtkImageData * TransformedInput
void SetDepthImageScalarTypeToUnsignedChar()
int ValidateRender(vtkRenderer *, vtkVolume *)
virtual void RenderBlock(vtkRenderer *ren, vtkVolume *vol, unsigned int level)=0
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual void PostRender(vtkRenderer *ren, int numberOfScalarComponents)=0
float MaximumImageSampleDistance
vtkGPUVolumeRayCastMapper()
float MinimumImageSampleDistance
vtkImageData * CanonicalViewImageData
void SetDepthImageScalarTypeToFloat()
window superclass for vtkRenderWindow
void SetTransformedInput(vtkImageData *)
virtual void ClipCroppingRegionPlanes()
Compute the cropping planes clipped by the bounds of the volume.
helper object to manage setting and generating contour values
topologically and geometrically regular array of data
a simple class to control print indentation
Ray casting performed on the GPU.
void SetDepthImageScalarTypeToUnsignedShort()
float ImageSampleDistance
virtual void GetColorImage(vtkImageData *)
Low level API to export the color texture as vtkImageData in RenderToImage mode.
void ReleaseGraphicsResources(vtkWindow *)
Release any graphics resources that are being consumed by this mapper.
virtual int IsRenderSupported(vtkRenderWindow *vtkNotUsed(window), vtkVolumeProperty *vtkNotUsed(property))
Based on hardware and properties, we may or may not be able to render using 3D texture mapping.
void CreateCanonicalView(vtkRenderer *ren, vtkVolume *volume, vtkImageData *image, int blend_mode, double viewDirection[3], double viewUp[3])
~vtkGPUVolumeRayCastMapper()
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
void CanonicalViewRender(vtkRenderer *, vtkVolume *)
abstract specification for renderers
virtual void GPURender(vtkRenderer *, vtkVolume *)
Handled in the subclass - the actual render method.
void SetMaskTypeToLabelMap()
int AutoAdjustSampleDistances
create a window for renderers to draw into
vtkImageData * LastInput
This is needed only to check if the input data has been changed since the last Render() call.
vtkContourValues * GetDepthPassContourValues()
Return handle to contour values container so that values can be set by the application.
vtkIdType MaxMemoryInBytes
vtkContourValues * DepthPassContourValues
represents the common properties for rendering a volume.
virtual void GetReductionRatio(double ratio[3])=0
Return how much the dataset has to be reduced in each dimension to fit on the GPU.