00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00045 #ifndef __vtkTemporalInterpolator_h
00046 #define __vtkTemporalInterpolator_h
00047
00048 #include "vtkTemporalDataSetAlgorithm.h"
00049
00050 class vtkDataSet;
00051
00052 class VTK_HYBRID_EXPORT vtkTemporalInterpolator : public vtkTemporalDataSetAlgorithm
00053 {
00054 public:
00055 static vtkTemporalInterpolator *New();
00056 vtkTypeRevisionMacro(vtkTemporalInterpolator, vtkTemporalDataSetAlgorithm);
00057 void PrintSelf(ostream& os, vtkIndent indent);
00058
00060
00067 vtkSetMacro(DiscreteTimeStepInterval, double);
00068 vtkGetMacro(DiscreteTimeStepInterval, double);
00070
00071 protected:
00072 vtkTemporalInterpolator();
00073 ~vtkTemporalInterpolator();
00074
00075 double DiscreteTimeStepInterval;
00076
00077
00078
00079
00080
00081
00082
00083 virtual int RequestUpdateExtent(vtkInformation *,
00084 vtkInformationVector **,
00085 vtkInformationVector *);
00086 virtual int RequestInformation(vtkInformation *,
00087 vtkInformationVector **,
00088 vtkInformationVector *);
00089
00090 virtual int RequestData(vtkInformation *,
00091 vtkInformationVector **,
00092 vtkInformationVector *);
00093
00095
00097 vtkDataObject *InterpolateDataObject(vtkDataObject *in1,
00098 vtkDataObject *in2,
00099 double ratio);
00101
00103
00106 vtkDataSet *InterpolateDataSet(vtkDataSet *in1,
00107 vtkDataSet *in2,
00108 double ratio);
00110
00112
00114 vtkDataArray *InterpolateDataArray(double ratio, vtkDataArray **arrays,
00115 vtkIdType N);
00117
00120 bool VerifyArrays(vtkDataArray **arrays, int N);
00121
00122 private:
00123 vtkTemporalInterpolator(const vtkTemporalInterpolator&);
00124 void operator=(const vtkTemporalInterpolator&);
00125 };
00126
00127
00128
00129 #endif
00130
00131
00132