VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkGPUVolumeRayCastMapper Class Referenceabstract

Ray casting performed on the GPU. More...

#include <vtkGPUVolumeRayCastMapper.h>

Inheritance diagram for vtkGPUVolumeRayCastMapper:
[legend]
Collaboration diagram for vtkGPUVolumeRayCastMapper:
[legend]

Public Types

enum  { BinaryMaskType = 0, LabelMapMaskType }
 
typedef vtkVolumeMapper Superclass
 
- Public Types inherited from vtkVolumeMapper
enum  { COMPOSITE_BLEND, MAXIMUM_INTENSITY_BLEND, MINIMUM_INTENSITY_BLEND, ADDITIVE_BLEND }
 
typedef vtkAbstractVolumeMapper Superclass
 
- Public Types inherited from vtkAbstractVolumeMapper
typedef vtkAbstractMapper3D Superclass
 
- Public Types inherited from vtkAbstractMapper3D
typedef vtkAbstractMapper Superclass
 
- Public Types inherited from vtkAbstractMapper
typedef vtkAlgorithm Superclass
 
- Public Types inherited from vtkAlgorithm
typedef vtkObject Superclass
 
enum  DesiredOutputPrecision { SINGLE_PRECISION, DOUBLE_PRECISION, DEFAULT_PRECISION }
 
- Public Types inherited from vtkObject
typedef vtkObjectBase Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkGPUVolumeRayCastMapperNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void CreateCanonicalView (vtkRenderer *ren, vtkVolume *volume, vtkImageData *image, int blend_mode, double viewDirection[3], double viewUp[3])
 
void Render (vtkRenderer *, vtkVolume *)
 
virtual void GPURender (vtkRenderer *, vtkVolume *)
 
void ReleaseGraphicsResources (vtkWindow *)
 
virtual void GetReductionRatio (double ratio[3])=0
 
virtual void SetAutoAdjustSampleDistances (int)
 
virtual int GetAutoAdjustSampleDistances ()
 
virtual void AutoAdjustSampleDistancesOn ()
 
virtual void AutoAdjustSampleDistancesOff ()
 
virtual void SetSampleDistance (float)
 
virtual float GetSampleDistance ()
 
virtual void SetImageSampleDistance (float)
 
virtual float GetImageSampleDistance ()
 
virtual void SetMinimumImageSampleDistance (float)
 
virtual float GetMinimumImageSampleDistance ()
 
virtual void SetMaximumImageSampleDistance (float)
 
virtual float GetMaximumImageSampleDistance ()
 
virtual void SetFinalColorWindow (float)
 
virtual float GetFinalColorWindow ()
 
virtual void SetFinalColorLevel (float)
 
virtual float GetFinalColorLevel ()
 
virtual void SetMaxMemoryInBytes (vtkIdType)
 
virtual vtkIdType GetMaxMemoryInBytes ()
 
virtual void SetMaxMemoryFraction (float)
 
virtual float GetMaxMemoryFraction ()
 
virtual void SetReportProgress (bool)
 
virtual bool GetReportProgress ()
 
virtual int IsRenderSupported (vtkRenderWindow *vtkNotUsed(window), vtkVolumeProperty *vtkNotUsed(property))
 
void SetMaskInput (vtkImageData *mask)
 
virtual vtkImageDataGetMaskInput ()
 
virtual void SetMaskType (int)
 
virtual int GetMaskType ()
 
void SetMaskTypeToBinary ()
 
void SetMaskTypeToLabelMap ()
 
virtual void SetMaskBlendFactor (float)
 
virtual float GetMaskBlendFactor ()
 
- Public Member Functions inherited from vtkVolumeMapper
vtkVolumeMapperNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual void SetInputData (vtkImageData *)
 
virtual void SetInputData (vtkDataSet *)
 
vtkImageDataGetInput ()
 
virtual void SetBlendMode (int)
 
void SetBlendModeToComposite ()
 
void SetBlendModeToMaximumIntensity ()
 
void SetBlendModeToMinimumIntensity ()
 
void SetBlendModeToAdditive ()
 
virtual int GetBlendMode ()
 
virtual void SetCropping (int)
 
virtual int GetCropping ()
 
virtual void CroppingOn ()
 
virtual void CroppingOff ()
 
virtual void SetCroppingRegionPlanes (double, double, double, double, double, double)
 
virtual void SetCroppingRegionPlanes (double[6])
 
virtual doubleGetCroppingRegionPlanes ()
 
virtual void GetCroppingRegionPlanes (double data[6])
 
virtual doubleGetVoxelCroppingRegionPlanes ()
 
virtual void GetVoxelCroppingRegionPlanes (double data[6])
 
virtual void SetCroppingRegionFlags (int)
 
virtual int GetCroppingRegionFlags ()
 
void SetCroppingRegionFlagsToSubVolume ()
 
void SetCroppingRegionFlagsToFence ()
 
void SetCroppingRegionFlagsToInvertedFence ()
 
void SetCroppingRegionFlagsToCross ()
 
void SetCroppingRegionFlagsToInvertedCross ()
 
- Public Member Functions inherited from vtkAbstractVolumeMapper
vtkAbstractVolumeMapperNewInstance () const
 
const char * GetScalarModeAsString ()
 
vtkDataSetGetDataSetInput ()
 
vtkDataObjectGetDataObjectInput ()
 
virtual doubleGetBounds ()
 
virtual void GetBounds (double bounds[6])
 
virtual void SetScalarMode (int)
 
virtual int GetScalarMode ()
 
void SetScalarModeToDefault ()
 
void SetScalarModeToUsePointData ()
 
void SetScalarModeToUseCellData ()
 
void SetScalarModeToUsePointFieldData ()
 
void SetScalarModeToUseCellFieldData ()
 
virtual void SelectScalarArray (int arrayNum)
 
virtual void SelectScalarArray (const char *arrayName)
 
virtual char * GetArrayName ()
 
virtual int GetArrayId ()
 
virtual int GetArrayAccessMode ()
 
virtual float GetGradientMagnitudeScale ()
 
virtual float GetGradientMagnitudeBias ()
 
virtual float GetGradientMagnitudeScale (int)
 
virtual float GetGradientMagnitudeBias (int)
 
- Public Member Functions inherited from vtkAbstractMapper3D
vtkAbstractMapper3DNewInstance () const
 
double GetLength ()
 
int GetNumberOfClippingPlanes ()
 
doubleGetCenter ()
 
void GetCenter (double center[3])
 
virtual int IsARayCastMapper ()
 
virtual int IsARenderIntoImageMapper ()
 
void GetClippingPlaneInDataCoords (vtkMatrix4x4 *propMatrix, int i, double planeEquation[4])
 
- Public Member Functions inherited from vtkAbstractMapper
vtkAbstractMapperNewInstance () const
 
virtual unsigned long GetMTime ()
 
void SetClippingPlanes (vtkPlanes *planes)
 
void ShallowCopy (vtkAbstractMapper *m)
 
virtual double GetTimeToDraw ()
 
void AddClippingPlane (vtkPlane *plane)
 
void RemoveClippingPlane (vtkPlane *plane)
 
void RemoveAllClippingPlanes ()
 
virtual void SetClippingPlanes (vtkPlaneCollection *)
 
virtual vtkPlaneCollectionGetClippingPlanes ()
 
- Public Member Functions inherited from vtkAlgorithm
vtkAlgorithmNewInstance () const
 
int HasExecutive ()
 
vtkExecutiveGetExecutive ()
 
virtual void SetExecutive (vtkExecutive *executive)
 
virtual int ModifyRequest (vtkInformation *request, int when)
 
vtkInformationGetInputPortInformation (int port)
 
vtkInformationGetOutputPortInformation (int port)
 
int GetNumberOfInputPorts ()
 
int GetNumberOfOutputPorts ()
 
void UpdateProgress (double amount)
 
vtkInformationGetInputArrayInformation (int idx)
 
void RemoveAllInputs ()
 
vtkDataObjectGetOutputDataObject (int port)
 
virtual void RemoveInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void RemoveInputConnection (int port, int idx)
 
virtual void RemoveAllInputConnections (int port)
 
int GetNumberOfInputConnections (int port)
 
int GetTotalNumberOfInputConnections ()
 
vtkAlgorithmOutputGetInputConnection (int port, int index)
 
vtkAlgorithmGetInputAlgorithm (int port, int index, int &algPort)
 
vtkAlgorithmGetInputAlgorithm (int port, int index)
 
vtkExecutiveGetInputExecutive (int port, int index)
 
vtkInformationGetInputInformation (int port, int index)
 
vtkInformationGetOutputInformation (int port)
 
virtual void UpdateInformation ()
 
virtual void UpdateDataObject ()
 
virtual void PropagateUpdateExtent ()
 
virtual void UpdateWholeExtent ()
 
void ConvertTotalInputToPortConnection (int ind, int &port, int &conn)
 
int SetUpdateExtentToWholeExtent (int port)
 
int SetUpdateExtentToWholeExtent ()
 
void SetUpdateExtent (int port, int extent[6])
 
virtual int ProcessRequest (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
 
int ProcessRequest (vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo)
 
virtual int ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, unsigned long *mtime)
 
virtual vtkInformationGetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
virtual void Register (vtkObjectBase *o)
 
virtual void UnRegister (vtkObjectBase *o)
 
virtual void SetAbortExecute (int)
 
virtual int GetAbortExecute ()
 
virtual void AbortExecuteOn ()
 
virtual void AbortExecuteOff ()
 
virtual void SetProgress (double)
 
virtual double GetProgress ()
 
void SetProgressText (const char *ptext)
 
virtual char * GetProgressText ()
 
virtual unsigned long GetErrorCode ()
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
 
virtual void SetInputArrayToProcess (int idx, vtkInformation *info)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName)
 
vtkDataObjectGetInputDataObject (int port, int connection)
 
virtual void SetInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void SetInputConnection (vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (vtkAlgorithmOutput *input)
 
virtual void SetInputDataObject (int port, vtkDataObject *data)
 
virtual void SetInputDataObject (vtkDataObject *data)
 
virtual void AddInputDataObject (int port, vtkDataObject *data)
 
virtual void AddInputDataObject (vtkDataObject *data)
 
vtkAlgorithmOutputGetOutputPort (int index)
 
vtkAlgorithmOutputGetOutputPort ()
 
vtkAlgorithmGetInputAlgorithm ()
 
vtkExecutiveGetInputExecutive ()
 
vtkInformationGetInputInformation ()
 
virtual void Update (int port)
 
virtual void Update ()
 
virtual void SetReleaseDataFlag (int)
 
virtual int GetReleaseDataFlag ()
 
void ReleaseDataFlagOn ()
 
void ReleaseDataFlagOff ()
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, vtkDataObject *output)
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, int extentType)
 
void SetUpdateExtent (int port, int piece, int numPieces, int ghostLevel)
 
void SetUpdateExtent (int piece, int numPieces, int ghostLevel)
 
void SetUpdateExtent (int extent[6])
 
intGetUpdateExtent ()
 
intGetUpdateExtent (int port)
 
void GetUpdateExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int extent[6])
 
void GetUpdateExtent (int port, int extent[6])
 
int GetUpdatePiece ()
 
int GetUpdatePiece (int port)
 
int GetUpdateNumberOfPieces ()
 
int GetUpdateNumberOfPieces (int port)
 
int GetUpdateGhostLevel ()
 
int GetUpdateGhostLevel (int port)
 
void SetProgressObserver (vtkProgressObserver *)
 
virtual vtkProgressObserverGetProgressObserver ()
 
- Public Member Functions inherited from vtkObject
vtkObjectNewInstance () const
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool debugFlag)
 
virtual void Modified ()
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
int HasObserver (unsigned long event, vtkCommand *)
 
int HasObserver (const char *event, vtkCommand *)
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
int HasObserver (unsigned long event)
 
int HasObserver (const char *event)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
int InvokeEvent (unsigned long event, void *callData)
 
int InvokeEvent (const char *event, void *callData)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 
virtual void Delete ()
 
virtual void FastDelete ()
 
void Print (ostream &os)
 
void SetReferenceCount (int)
 
void PrintRevisions (ostream &)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 

Static Public Member Functions

static vtkGPUVolumeRayCastMapperNew ()
 
static int IsTypeOf (const char *type)
 
static vtkGPUVolumeRayCastMapperSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkVolumeMapper
static int IsTypeOf (const char *type)
 
static vtkVolumeMapperSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkAbstractVolumeMapper
static int IsTypeOf (const char *type)
 
static vtkAbstractVolumeMapperSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkAbstractMapper3D
static int IsTypeOf (const char *type)
 
static vtkAbstractMapper3DSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkAbstractMapper
static int IsTypeOf (const char *type)
 
static vtkAbstractMapperSafeDownCast (vtkObjectBase *o)
 
static vtkDataArrayGetScalars (vtkDataSet *input, int scalarMode, int arrayAccessMode, int arrayId, const char *arrayName, int &cellFlag)
 
static vtkAbstractArrayGetAbstractScalars (vtkDataSet *input, int scalarMode, int arrayAccessMode, int arrayId, const char *arrayName, int &cellFlag)
 
- Static Public Member Functions inherited from vtkAlgorithm
static vtkAlgorithmNew ()
 
static int IsTypeOf (const char *type)
 
static vtkAlgorithmSafeDownCast (vtkObjectBase *o)
 
static vtkInformationIntegerKeyINPUT_IS_OPTIONAL ()
 
static vtkInformationIntegerKeyINPUT_IS_REPEATABLE ()
 
static vtkInformationInformationVectorKeyINPUT_REQUIRED_FIELDS ()
 
static vtkInformationStringVectorKeyINPUT_REQUIRED_DATA_TYPE ()
 
static vtkInformationInformationVectorKeyINPUT_ARRAYS_TO_PROCESS ()
 
static vtkInformationIntegerKeyINPUT_PORT ()
 
static vtkInformationIntegerKeyINPUT_CONNECTION ()
 
static vtkInformationIntegerKeyCAN_PRODUCE_SUB_EXTENT ()
 
static vtkInformationIntegerKeyCAN_HANDLE_PIECE_REQUEST ()
 
static void SetDefaultExecutivePrototype (vtkExecutive *proto)
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObjectSafeDownCast (vtkObjectBase *o)
 
static vtkObjectNew ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static int IsTypeOf (const char *name)
 
static vtkObjectBaseNew ()
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkGPUVolumeRayCastMapper ()
 
 ~vtkGPUVolumeRayCastMapper ()
 
int ValidateRender (vtkRenderer *, vtkVolume *)
 
void CanonicalViewRender (vtkRenderer *, vtkVolume *)
 
virtual void PreRender (vtkRenderer *ren, vtkVolume *vol, double datasetBounds[6], double scalarRange[2], int numberOfScalarComponents, unsigned int numberOfLevels)=0
 
virtual void RenderBlock (vtkRenderer *ren, vtkVolume *vol, unsigned int level)=0
 
virtual void PostRender (vtkRenderer *ren, int numberOfScalarComponents)=0
 
void SetCellFlag (int cellFlag)
 
virtual void ClipCroppingRegionPlanes ()
 
virtual vtkImageDataGetTransformedInput ()
 
void SetTransformedInput (vtkImageData *)
 
virtual void SetAMRMode (int)
 
virtual int GetAMRMode ()
 
virtual void AMRModeOn ()
 
virtual void AMRModeOff ()
 
- Protected Member Functions inherited from vtkVolumeMapper
 vtkVolumeMapper ()
 
 ~vtkVolumeMapper ()
 
void ConvertCroppingRegionPlanesToVoxels ()
 
virtual int FillInputPortInformation (int, vtkInformation *)
 
- Protected Member Functions inherited from vtkAbstractVolumeMapper
 vtkAbstractVolumeMapper ()
 
 ~vtkAbstractVolumeMapper ()
 
- Protected Member Functions inherited from vtkAbstractMapper3D
 vtkAbstractMapper3D ()
 
 ~vtkAbstractMapper3D ()
 
- Protected Member Functions inherited from vtkAbstractMapper
 vtkAbstractMapper ()
 
 ~vtkAbstractMapper ()
 
- Protected Member Functions inherited from vtkAlgorithm
 vtkAlgorithm ()
 
 ~vtkAlgorithm ()
 
virtual int FillOutputPortInformation (int port, vtkInformation *info)
 
virtual void SetNumberOfInputPorts (int n)
 
virtual void SetNumberOfOutputPorts (int n)
 
int InputPortIndexInRange (int index, const char *action)
 
int OutputPortIndexInRange (int index, const char *action)
 
int GetInputArrayAssociation (int idx, vtkInformationVector **inputVector)
 
virtual vtkExecutiveCreateDefaultExecutive ()
 
virtual void ReportReferences (vtkGarbageCollector *)
 
virtual void SetNumberOfInputConnections (int port, int n)
 
int GetInputArrayAssociation (int idx, int connection, vtkInformationVector **inputVector)
 
int GetInputArrayAssociation (int idx, vtkDataObject *input)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkDataArrayGetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkDataArrayGetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkDataObject *input)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkDataObject *input)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkInformationGetInputArrayFieldInformation (int idx, vtkInformationVector **inputVector)
 
virtual void SetNthInputConnection (int port, int index, vtkAlgorithmOutput *input)
 
void SetInputDataInternal (int port, vtkDataObject *input)
 
void AddInputDataInternal (int port, vtkDataObject *input)
 
virtual void SetErrorCode (unsigned long)
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
virtual ~vtkObject ()
 
virtual void RegisterInternal (vtkObjectBase *, int check)
 
virtual void UnRegisterInternal (vtkObjectBase *, int check)
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Protected Attributes

float SampleDistance
 
float ImageSampleDistance
 
float MinimumImageSampleDistance
 
float MaximumImageSampleDistance
 
int AutoAdjustSampleDistances
 
int SmallVolumeRender
 
double BigTimeToDraw
 
double SmallTimeToDraw
 
float FinalColorWindow
 
float FinalColorLevel
 
vtkIdType MaxMemoryInBytes
 
float MaxMemoryFraction
 
int GeneratingCanonicalView
 
vtkImageDataCanonicalViewImageData
 
int AMRMode
 
int CellFlag
 
double ClippedCroppingRegionPlanes [6]
 
bool ReportProgress
 
vtkImageDataMaskInput
 
float MaskBlendFactor
 
int MaskType
 
vtkImageDataTransformedInput
 
vtkImageDataLastInput
 
- Protected Attributes inherited from vtkVolumeMapper
int BlendMode
 
int Cropping
 
double CroppingRegionPlanes [6]
 
double VoxelCroppingRegionPlanes [6]
 
int CroppingRegionFlags
 
- Protected Attributes inherited from vtkAbstractVolumeMapper
int ScalarMode
 
char * ArrayName
 
int ArrayId
 
int ArrayAccessMode
 
- Protected Attributes inherited from vtkAbstractMapper3D
double Bounds [6]
 
double Center [3]
 
- Protected Attributes inherited from vtkAbstractMapper
vtkTimerLogTimer
 
double TimeToDraw
 
vtkWindowLastWindow
 
vtkPlaneCollectionClippingPlanes
 
- Protected Attributes inherited from vtkAlgorithm
vtkInformationInformation
 
double Progress
 
char * ProgressText
 
vtkProgressObserverProgressObserver
 
unsigned long ErrorCode
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Additional Inherited Members

- Public Attributes inherited from vtkAlgorithm
int AbortExecute
 
- Static Protected Member Functions inherited from vtkAlgorithm
static vtkInformationIntegerKeyPORT_REQUIREMENTS_FILLED ()
 
- Static Protected Attributes inherited from vtkAlgorithm
static vtkExecutiveDefaultExecutivePrototype
 

Detailed Description

Ray casting performed on the GPU.

vtkGPUVolumeRayCastMapper is a volume mapper that performs ray casting on the GPU using fragment programs.

Events:
vtkCommand::VolumeMapperRenderEndEvent vtkCommand::VolumeMapperRenderStartEvent
Tests:
vtkGPUVolumeRayCastMapper (Tests)

Definition at line 40 of file vtkGPUVolumeRayCastMapper.h.

Member Typedef Documentation

Definition at line 44 of file vtkGPUVolumeRayCastMapper.h.

Member Enumeration Documentation

anonymous enum
Enumerator
BinaryMaskType 
LabelMapMaskType 

Definition at line 166 of file vtkGPUVolumeRayCastMapper.h.

Constructor & Destructor Documentation

vtkGPUVolumeRayCastMapper::vtkGPUVolumeRayCastMapper ( )
protected
vtkGPUVolumeRayCastMapper::~vtkGPUVolumeRayCastMapper ( )
protected

Member Function Documentation

static vtkGPUVolumeRayCastMapper* vtkGPUVolumeRayCastMapper::New ( )
static
static int vtkGPUVolumeRayCastMapper::IsTypeOf ( const char *  type)
static
virtual int vtkGPUVolumeRayCastMapper::IsA ( const char *  name)
virtual

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkVolumeMapper.

Reimplemented in vtkOpenGLGPUVolumeRayCastMapper, and vtkOpenGLGPUVolumeRayCastMapper.

static vtkGPUVolumeRayCastMapper* vtkGPUVolumeRayCastMapper::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkGPUVolumeRayCastMapper::NewInstanceInternal ( ) const
protectedvirtual
vtkGPUVolumeRayCastMapper* vtkGPUVolumeRayCastMapper::NewInstance ( ) const
void vtkGPUVolumeRayCastMapper::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkAbstractVolumeMapper.

Reimplemented in vtkOpenGLGPUVolumeRayCastMapper, and vtkOpenGLGPUVolumeRayCastMapper.

virtual void vtkGPUVolumeRayCastMapper::SetAutoAdjustSampleDistances ( int  )
virtual

If AutoAdjustSampleDistances is on, the the ImageSampleDistance will be varied to achieve the allocated render time of this prop (controlled by the desired update rate and any culling in use).

virtual int vtkGPUVolumeRayCastMapper::GetAutoAdjustSampleDistances ( )
virtual

If AutoAdjustSampleDistances is on, the the ImageSampleDistance will be varied to achieve the allocated render time of this prop (controlled by the desired update rate and any culling in use).

virtual void vtkGPUVolumeRayCastMapper::AutoAdjustSampleDistancesOn ( )
virtual

If AutoAdjustSampleDistances is on, the the ImageSampleDistance will be varied to achieve the allocated render time of this prop (controlled by the desired update rate and any culling in use).

virtual void vtkGPUVolumeRayCastMapper::AutoAdjustSampleDistancesOff ( )
virtual

If AutoAdjustSampleDistances is on, the the ImageSampleDistance will be varied to achieve the allocated render time of this prop (controlled by the desired update rate and any culling in use).

virtual void vtkGPUVolumeRayCastMapper::SetSampleDistance ( float  )
virtual

Set/Get the distance between samples used for rendering when AutoAdjustSampleDistances is off, or when this mapper has more than 1 second allocated to it for rendering. Initial value is 1.0.

virtual float vtkGPUVolumeRayCastMapper::GetSampleDistance ( )
virtual

Set/Get the distance between samples used for rendering when AutoAdjustSampleDistances is off, or when this mapper has more than 1 second allocated to it for rendering. Initial value is 1.0.

virtual void vtkGPUVolumeRayCastMapper::SetImageSampleDistance ( float  )
virtual

Sampling distance in the XY image dimensions. Default value of 1 meaning 1 ray cast per pixel. If set to 0.5, 4 rays will be cast per pixel. If set to 2.0, 1 ray will be cast for every 4 (2 by 2) pixels. This value will be adjusted to meet a desired frame rate when AutoAdjustSampleDistances is on.

virtual float vtkGPUVolumeRayCastMapper::GetImageSampleDistance ( )
virtual

Sampling distance in the XY image dimensions. Default value of 1 meaning 1 ray cast per pixel. If set to 0.5, 4 rays will be cast per pixel. If set to 2.0, 1 ray will be cast for every 4 (2 by 2) pixels. This value will be adjusted to meet a desired frame rate when AutoAdjustSampleDistances is on.

virtual void vtkGPUVolumeRayCastMapper::SetMinimumImageSampleDistance ( float  )
virtual

This is the minimum image sample distance allow when the image sample distance is being automatically adjusted.

virtual float vtkGPUVolumeRayCastMapper::GetMinimumImageSampleDistance ( )
virtual

This is the minimum image sample distance allow when the image sample distance is being automatically adjusted.

virtual void vtkGPUVolumeRayCastMapper::SetMaximumImageSampleDistance ( float  )
virtual

This is the maximum image sample distance allow when the image sample distance is being automatically adjusted.

virtual float vtkGPUVolumeRayCastMapper::GetMaximumImageSampleDistance ( )
virtual

This is the maximum image sample distance allow when the image sample distance is being automatically adjusted.

virtual void vtkGPUVolumeRayCastMapper::SetFinalColorWindow ( float  )
virtual

Set/Get the window / level applied to the final color. This allows brightness / contrast adjustments on the final image. window is the width of the window. level is the center of the window. Initial window value is 1.0 Initial level value is 0.5 window cannot be null but can be negative, this way values will be reversed. |window| can be larger than 1.0 level can be any real value.

virtual float vtkGPUVolumeRayCastMapper::GetFinalColorWindow ( )
virtual

Set/Get the window / level applied to the final color. This allows brightness / contrast adjustments on the final image. window is the width of the window. level is the center of the window. Initial window value is 1.0 Initial level value is 0.5 window cannot be null but can be negative, this way values will be reversed. |window| can be larger than 1.0 level can be any real value.

virtual void vtkGPUVolumeRayCastMapper::SetFinalColorLevel ( float  )
virtual

Set/Get the window / level applied to the final color. This allows brightness / contrast adjustments on the final image. window is the width of the window. level is the center of the window. Initial window value is 1.0 Initial level value is 0.5 window cannot be null but can be negative, this way values will be reversed. |window| can be larger than 1.0 level can be any real value.

virtual float vtkGPUVolumeRayCastMapper::GetFinalColorLevel ( )
virtual

Set/Get the window / level applied to the final color. This allows brightness / contrast adjustments on the final image. window is the width of the window. level is the center of the window. Initial window value is 1.0 Initial level value is 0.5 window cannot be null but can be negative, this way values will be reversed. |window| can be larger than 1.0 level can be any real value.

virtual void vtkGPUVolumeRayCastMapper::SetMaxMemoryInBytes ( vtkIdType  )
virtual

Maximum size of the 3D texture in GPU memory. Will default to the size computed from the graphics card. Can be adjusted by the user.

virtual vtkIdType vtkGPUVolumeRayCastMapper::GetMaxMemoryInBytes ( )
virtual

Maximum size of the 3D texture in GPU memory. Will default to the size computed from the graphics card. Can be adjusted by the user.

virtual void vtkGPUVolumeRayCastMapper::SetMaxMemoryFraction ( float  )
virtual

Maximum fraction of the MaxMemoryInBytes that should be used to hold the texture. Valid values are 0.1 to 1.0.

virtual float vtkGPUVolumeRayCastMapper::GetMaxMemoryFraction ( )
virtual

Maximum fraction of the MaxMemoryInBytes that should be used to hold the texture. Valid values are 0.1 to 1.0.

virtual void vtkGPUVolumeRayCastMapper::SetReportProgress ( bool  )
virtual

Tells if the mapper will report intermediate progress. Initial value is true. As the progress works with a GL blocking call (glFinish()), this can be useful for huge dataset but can slow down rendering of small dataset. It should be set to true for big dataset or complex shading and streaming but to false for small datasets.

virtual bool vtkGPUVolumeRayCastMapper::GetReportProgress ( )
virtual

Tells if the mapper will report intermediate progress. Initial value is true. As the progress works with a GL blocking call (glFinish()), this can be useful for huge dataset but can slow down rendering of small dataset. It should be set to true for big dataset or complex shading and streaming but to false for small datasets.

virtual int vtkGPUVolumeRayCastMapper::IsRenderSupported ( vtkRenderWindow vtkNotUsedwindow,
vtkVolumeProperty vtkNotUsedproperty 
)
inlinevirtual

Based on hardware and properties, we may or may not be able to render using 3D texture mapping. This indicates if 3D texture mapping is supported by the hardware, and if the other extensions necessary to support the specific properties are available.

Reimplemented in vtkOpenGLGPUVolumeRayCastMapper.

Definition at line 131 of file vtkGPUVolumeRayCastMapper.h.

void vtkGPUVolumeRayCastMapper::CreateCanonicalView ( vtkRenderer ren,
vtkVolume volume,
vtkImageData image,
int  blend_mode,
double  viewDirection[3],
double  viewUp[3] 
)
void vtkGPUVolumeRayCastMapper::SetMaskInput ( vtkImageData mask)

Optionally, set a mask input. This mask may be a binary mask or a label map. This must be specified via SetMaskType. If the mask is a binary mask, the volume rendering is confined to regions within the binary mask. The binary mask is assumed to have a datatype of UCHAR and values of 255 (inside) and 0 (outside). The mask may also be a label map. The label map is allowed to contain only 3 labels (values of 0, 1 and 2) and must have a datatype of UCHAR. In voxels with label value of 0, the color transfer function supplied by component 0 is used. In voxels with label value of 1, the color transfer function supplied by component 1 is used and blended with the transfer function supplied by component 0, with the blending weight being determined by MaskBlendFactor. In voxels with a label value of 2, the color transfer function supplied by component 2 is used and blended with the transfer function supplied by component 0, with the blending weight being determined by MaskBlendFactor.

virtual vtkImageData* vtkGPUVolumeRayCastMapper::GetMaskInput ( )
virtual

Optionally, set a mask input. This mask may be a binary mask or a label map. This must be specified via SetMaskType. If the mask is a binary mask, the volume rendering is confined to regions within the binary mask. The binary mask is assumed to have a datatype of UCHAR and values of 255 (inside) and 0 (outside). The mask may also be a label map. The label map is allowed to contain only 3 labels (values of 0, 1 and 2) and must have a datatype of UCHAR. In voxels with label value of 0, the color transfer function supplied by component 0 is used. In voxels with label value of 1, the color transfer function supplied by component 1 is used and blended with the transfer function supplied by component 0, with the blending weight being determined by MaskBlendFactor. In voxels with a label value of 2, the color transfer function supplied by component 2 is used and blended with the transfer function supplied by component 0, with the blending weight being determined by MaskBlendFactor.

virtual void vtkGPUVolumeRayCastMapper::SetMaskType ( int  )
virtual

Set the mask type, if mask is to be used. See documentation for SetMaskInput(). The default is a LabelMapMaskType.

virtual int vtkGPUVolumeRayCastMapper::GetMaskType ( )
virtual

Set the mask type, if mask is to be used. See documentation for SetMaskInput(). The default is a LabelMapMaskType.

void vtkGPUVolumeRayCastMapper::SetMaskTypeToBinary ( )

Set the mask type, if mask is to be used. See documentation for SetMaskInput(). The default is a LabelMapMaskType.

void vtkGPUVolumeRayCastMapper::SetMaskTypeToLabelMap ( )

Set the mask type, if mask is to be used. See documentation for SetMaskInput(). The default is a LabelMapMaskType.

virtual void vtkGPUVolumeRayCastMapper::SetMaskBlendFactor ( float  )
virtual

Tells how much mask color transfer function is used compared to the standard color transfer function when the mask is true. This is relevant only for the label map mask. 0.0 means only standard color transfer function. 1.0 means only mask color transfer function. The default value is 1.0.

virtual float vtkGPUVolumeRayCastMapper::GetMaskBlendFactor ( )
virtual

Tells how much mask color transfer function is used compared to the standard color transfer function when the mask is true. This is relevant only for the label map mask. 0.0 means only standard color transfer function. 1.0 means only mask color transfer function. The default value is 1.0.

void vtkGPUVolumeRayCastMapper::Render ( vtkRenderer ,
vtkVolume  
)
virtual

WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Initialize rendering for this volume.

Implements vtkVolumeMapper.

virtual void vtkGPUVolumeRayCastMapper::GPURender ( vtkRenderer ,
vtkVolume  
)
inlinevirtual

Handled in the subclass - the actual render method

Precondition
input is up-to-date.

Reimplemented in vtkOpenGLGPUVolumeRayCastMapper, and vtkOpenGLGPUVolumeRayCastMapper.

Definition at line 195 of file vtkGPUVolumeRayCastMapper.h.

void vtkGPUVolumeRayCastMapper::ReleaseGraphicsResources ( vtkWindow )
inlinevirtual

WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Release any graphics resources that are being consumed by this mapper. The parameter window could be used to determine which graphic resources to release.

Reimplemented from vtkVolumeMapper.

Reimplemented in vtkOpenGLGPUVolumeRayCastMapper, and vtkOpenGLGPUVolumeRayCastMapper.

Definition at line 201 of file vtkGPUVolumeRayCastMapper.h.

virtual void vtkGPUVolumeRayCastMapper::GetReductionRatio ( double  ratio[3])
pure virtual

Return how much the dataset has to be reduced in each dimension to fit on the GPU. If the value is 1.0, there is no need to reduce the dataset.

Precondition
the calling thread has a current OpenGL context.
mapper_supported: IsRenderSupported(renderer->GetRenderWindow(),0) The computation is based on hardware limits (3D texture indexable size) and MaxMemoryInBytes.
Postcondition
valid_i_ratio: ratio[0]>0 && ratio[0]<=1.0
valid_j_ratio: ratio[1]>0 && ratio[1]<=1.0
valid_k_ratio: ratio[2]>0 && ratio[2]<=1.0

Implemented in vtkOpenGLGPUVolumeRayCastMapper.

int vtkGPUVolumeRayCastMapper::ValidateRender ( vtkRenderer ,
vtkVolume  
)
protected
void vtkGPUVolumeRayCastMapper::CanonicalViewRender ( vtkRenderer ,
vtkVolume  
)
protected
virtual void vtkGPUVolumeRayCastMapper::PreRender ( vtkRenderer ren,
vtkVolume vol,
double  datasetBounds[6],
double  scalarRange[2],
int  numberOfScalarComponents,
unsigned int  numberOfLevels 
)
protectedpure virtual
virtual void vtkGPUVolumeRayCastMapper::RenderBlock ( vtkRenderer ren,
vtkVolume vol,
unsigned int  level 
)
protectedpure virtual
virtual void vtkGPUVolumeRayCastMapper::PostRender ( vtkRenderer ren,
int  numberOfScalarComponents 
)
protectedpure virtual
void vtkGPUVolumeRayCastMapper::SetCellFlag ( int  cellFlag)
protected

Called by the AMR Volume Mapper. Set the flag that tells if the scalars are on point data (0) or cell data (1).

virtual void vtkGPUVolumeRayCastMapper::SetAMRMode ( int  )
protectedvirtual

Set the mapper in AMR Mode or not. Initial value is false. Called only by the vtkKWAMRVolumeMapper

virtual int vtkGPUVolumeRayCastMapper::GetAMRMode ( )
protectedvirtual

Set the mapper in AMR Mode or not. Initial value is false. Called only by the vtkKWAMRVolumeMapper

virtual void vtkGPUVolumeRayCastMapper::AMRModeOn ( )
protectedvirtual

Set the mapper in AMR Mode or not. Initial value is false. Called only by the vtkKWAMRVolumeMapper

virtual void vtkGPUVolumeRayCastMapper::AMRModeOff ( )
protectedvirtual

Set the mapper in AMR Mode or not. Initial value is false. Called only by the vtkKWAMRVolumeMapper

virtual void vtkGPUVolumeRayCastMapper::ClipCroppingRegionPlanes ( )
protectedvirtual

Compute the cropping planes clipped by the bounds of the volume. The result is put into this->ClippedCroppingRegionPlanes. NOTE: IT WILL BE MOVED UP TO vtkVolumeMapper after bullet proof usage in this mapper. Other subclasses will use the ClippedCroppingRegionsPlanes members instead of CroppingRegionPlanes.

Precondition
volume_exists: this->GetInput()!=0
valid_cropping: this->Cropping && this->CroppingRegionPlanes[0]<this->CroppingRegionPlanes[1] && this->CroppingRegionPlanes[2]<this->CroppingRegionPlanes[3] && this->CroppingRegionPlanes[4]<this->CroppingRegionPlanes[5])
virtual vtkImageData* vtkGPUVolumeRayCastMapper::GetTransformedInput ( )
protectedvirtual
void vtkGPUVolumeRayCastMapper::SetTransformedInput ( vtkImageData )
protected

Member Data Documentation

float vtkGPUVolumeRayCastMapper::SampleDistance
protected

Definition at line 248 of file vtkGPUVolumeRayCastMapper.h.

float vtkGPUVolumeRayCastMapper::ImageSampleDistance
protected

Definition at line 251 of file vtkGPUVolumeRayCastMapper.h.

float vtkGPUVolumeRayCastMapper::MinimumImageSampleDistance
protected

Definition at line 252 of file vtkGPUVolumeRayCastMapper.h.

float vtkGPUVolumeRayCastMapper::MaximumImageSampleDistance
protected

Definition at line 253 of file vtkGPUVolumeRayCastMapper.h.

int vtkGPUVolumeRayCastMapper::AutoAdjustSampleDistances
protected

Definition at line 254 of file vtkGPUVolumeRayCastMapper.h.

int vtkGPUVolumeRayCastMapper::SmallVolumeRender
protected

Definition at line 256 of file vtkGPUVolumeRayCastMapper.h.

double vtkGPUVolumeRayCastMapper::BigTimeToDraw
protected

Definition at line 257 of file vtkGPUVolumeRayCastMapper.h.

double vtkGPUVolumeRayCastMapper::SmallTimeToDraw
protected

Definition at line 258 of file vtkGPUVolumeRayCastMapper.h.

float vtkGPUVolumeRayCastMapper::FinalColorWindow
protected

Definition at line 260 of file vtkGPUVolumeRayCastMapper.h.

float vtkGPUVolumeRayCastMapper::FinalColorLevel
protected

Definition at line 261 of file vtkGPUVolumeRayCastMapper.h.

vtkIdType vtkGPUVolumeRayCastMapper::MaxMemoryInBytes
protected

Definition at line 263 of file vtkGPUVolumeRayCastMapper.h.

float vtkGPUVolumeRayCastMapper::MaxMemoryFraction
protected

Definition at line 264 of file vtkGPUVolumeRayCastMapper.h.

int vtkGPUVolumeRayCastMapper::GeneratingCanonicalView
protected

Definition at line 268 of file vtkGPUVolumeRayCastMapper.h.

vtkImageData* vtkGPUVolumeRayCastMapper::CanonicalViewImageData
protected

Definition at line 269 of file vtkGPUVolumeRayCastMapper.h.

int vtkGPUVolumeRayCastMapper::AMRMode
protected

Definition at line 276 of file vtkGPUVolumeRayCastMapper.h.

int vtkGPUVolumeRayCastMapper::CellFlag
protected

Definition at line 280 of file vtkGPUVolumeRayCastMapper.h.

double vtkGPUVolumeRayCastMapper::ClippedCroppingRegionPlanes[6]
protected

Definition at line 293 of file vtkGPUVolumeRayCastMapper.h.

bool vtkGPUVolumeRayCastMapper::ReportProgress
protected

Definition at line 294 of file vtkGPUVolumeRayCastMapper.h.

vtkImageData* vtkGPUVolumeRayCastMapper::MaskInput
protected

Definition at line 295 of file vtkGPUVolumeRayCastMapper.h.

float vtkGPUVolumeRayCastMapper::MaskBlendFactor
protected

Definition at line 296 of file vtkGPUVolumeRayCastMapper.h.

int vtkGPUVolumeRayCastMapper::MaskType
protected

Definition at line 297 of file vtkGPUVolumeRayCastMapper.h.

vtkImageData* vtkGPUVolumeRayCastMapper::TransformedInput
protected

Definition at line 298 of file vtkGPUVolumeRayCastMapper.h.

vtkImageData* vtkGPUVolumeRayCastMapper::LastInput
protected

This is needed only to check if the input data has been changed since the last Render() call.

Definition at line 305 of file vtkGPUVolumeRayCastMapper.h.


The documentation for this class was generated from the following file: