Filtering/vtkImplicitVolume.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00042 #ifndef __vtkImplicitVolume_h
00043 #define __vtkImplicitVolume_h
00044
00045 #include "vtkImplicitFunction.h"
00046
00047 class vtkIdList;
00048 class vtkImageData;
00049
00050 class VTK_FILTERING_EXPORT vtkImplicitVolume : public vtkImplicitFunction
00051 {
00052 public:
00053 vtkTypeRevisionMacro(vtkImplicitVolume,vtkImplicitFunction);
00054 void PrintSelf(ostream& os, vtkIndent indent);
00055
00058 static vtkImplicitVolume *New();
00059
00063 unsigned long GetMTime();
00064
00066
00068 double EvaluateFunction(double x[3]);
00069 double EvaluateFunction(double x, double y, double z)
00070 {return this->vtkImplicitFunction::EvaluateFunction(x, y, z); } ;
00072
00074 void EvaluateGradient(double x[3], double n[3]);
00075
00077
00078 virtual void SetVolume(vtkImageData*);
00079 vtkGetObjectMacro(Volume,vtkImageData);
00081
00083
00084 vtkSetMacro(OutValue,double);
00085 vtkGetMacro(OutValue,double);
00087
00089
00090 vtkSetVector3Macro(OutGradient,double);
00091 vtkGetVector3Macro(OutGradient,double);
00093
00094 protected:
00095 vtkImplicitVolume();
00096 ~vtkImplicitVolume();
00097
00098 vtkImageData *Volume;
00099 double OutValue;
00100 double OutGradient[3];
00101
00102 vtkIdList *PointIds;
00103
00104 private:
00105 vtkImplicitVolume(const vtkImplicitVolume&);
00106 void operator=(const vtkImplicitVolume&);
00107 };
00108
00109 #endif
00110
00111