00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00042 #ifndef __vtkShepardMethod_h
00043 #define __vtkShepardMethod_h
00044
00045 #include "vtkImageAlgorithm.h"
00046
00047 class VTK_IMAGING_EXPORT vtkShepardMethod : public vtkImageAlgorithm
00048 {
00049 public:
00050 vtkTypeRevisionMacro(vtkShepardMethod,vtkImageAlgorithm);
00051 void PrintSelf(ostream& os, vtkIndent indent);
00052
00056 static vtkShepardMethod *New();
00057
00059 double ComputeModelBounds(double origin[3], double ar[3]);
00060
00062
00063 vtkGetVectorMacro(SampleDimensions,int,3);
00065
00067 void SetSampleDimensions(int i, int j, int k);
00068
00070 void SetSampleDimensions(int dim[3]);
00071
00073
00078 vtkSetClampMacro(MaximumDistance,double,0.0,1.0);
00079 vtkGetMacro(MaximumDistance,double);
00081
00083
00084 vtkSetVector6Macro(ModelBounds,double);
00085 vtkGetVectorMacro(ModelBounds,double,6);
00087
00089
00091 vtkSetMacro(NullValue,double);
00092 vtkGetMacro(NullValue,double);
00094
00095 protected:
00096 vtkShepardMethod();
00097 ~vtkShepardMethod() {};
00098
00099 virtual int RequestInformation (vtkInformation *,
00100 vtkInformationVector **,
00101 vtkInformationVector *);
00102
00103
00104 virtual int RequestData(vtkInformation *request,
00105 vtkInformationVector** inputVector,
00106 vtkInformationVector* outputVector);
00107
00108
00109 virtual int FillInputPortInformation(int port, vtkInformation* info);
00110
00111 int SampleDimensions[3];
00112 double MaximumDistance;
00113 double ModelBounds[6];
00114 double NullValue;
00115 private:
00116 vtkShepardMethod(const vtkShepardMethod&);
00117 void operator=(const vtkShepardMethod&);
00118 };
00119
00120 #endif
00121
00122