Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dox/Rendering/vtkVolumeRayCastMIPFunction.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkVolumeRayCastMIPFunction.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 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 //BTX 00073 void CastRay( vtkVolumeRayCastDynamicInfo *dynamicInfo, 00074 vtkVolumeRayCastStaticInfo *staticInfo ); 00075 //ETX 00076 00077 00078 protected: 00079 vtkVolumeRayCastMIPFunction(); 00080 ~vtkVolumeRayCastMIPFunction(); 00081 00082 int MaximizeMethod; 00083 00084 //BTX 00085 void SpecificFunctionInitialize( vtkRenderer *ren, 00086 vtkVolume *vol, 00087 vtkVolumeRayCastStaticInfo *staticInfo, 00088 vtkVolumeRayCastMapper *mapper ); 00089 00090 //ETX 00091 private: 00092 vtkVolumeRayCastMIPFunction(const vtkVolumeRayCastMIPFunction&); // Not implemented. 00093 void operator=(const vtkVolumeRayCastMIPFunction&); // Not implemented. 00094 }; 00095 00096 00097 00098 #endif