vtkVolumeRayCastMIPFunction.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00040 #ifndef __vtkVolumeRayCastMIPFunction_h
00041 #define __vtkVolumeRayCastMIPFunction_h
00042
00043 #include "vtkVolumeRayCastFunction.h"
00044
00045 #define VTK_MAXIMIZE_SCALAR_VALUE 0
00046 #define VTK_MAXIMIZE_OPACITY 1
00047
00048 class VTK_RENDERING_EXPORT vtkVolumeRayCastMIPFunction : public vtkVolumeRayCastFunction
00049 {
00050 public:
00051 static vtkVolumeRayCastMIPFunction *New();
00052 vtkTypeRevisionMacro(vtkVolumeRayCastMIPFunction,vtkVolumeRayCastFunction);
00053 void PrintSelf( ostream& os, vtkIndent indent );
00054
00055
00057 float GetZeroOpacityThreshold( vtkVolume *vol );
00058
00059
00061
00062 vtkSetClampMacro( MaximizeMethod, int,
00063 VTK_MAXIMIZE_SCALAR_VALUE, VTK_MAXIMIZE_OPACITY );
00064 vtkGetMacro(MaximizeMethod,int);
00065 void SetMaximizeMethodToScalarValue()
00066 {this->SetMaximizeMethod(VTK_MAXIMIZE_SCALAR_VALUE);}
00067 void SetMaximizeMethodToOpacity()
00068 {this->SetMaximizeMethod(VTK_MAXIMIZE_OPACITY);}
00069 const char *GetMaximizeMethodAsString(void);
00071
00072
00073 void CastRay( vtkVolumeRayCastDynamicInfo *dynamicInfo,
00074 vtkVolumeRayCastStaticInfo *staticInfo );
00075
00076
00077
00078 protected:
00079 vtkVolumeRayCastMIPFunction();
00080 ~vtkVolumeRayCastMIPFunction();
00081
00082 int MaximizeMethod;
00083
00084
00085 void SpecificFunctionInitialize( vtkRenderer *ren,
00086 vtkVolume *vol,
00087 vtkVolumeRayCastStaticInfo *staticInfo,
00088 vtkVolumeRayCastMapper *mapper );
00089
00090
00091 private:
00092 vtkVolumeRayCastMIPFunction(const vtkVolumeRayCastMIPFunction&);
00093 void operator=(const vtkVolumeRayCastMIPFunction&);
00094 };
00095
00096
00097
00098 #endif