00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00036 #ifndef __vtkTemporalInterpolator_h
00037 #define __vtkTemporalInterpolator_h
00038
00039 #include "vtkTemporalDataSetAlgorithm.h"
00040
00041 class vtkDataSet;
00042
00043 class VTK_HYBRID_EXPORT vtkTemporalInterpolator : public vtkTemporalDataSetAlgorithm
00044 {
00045 public:
00046 static vtkTemporalInterpolator *New();
00047 vtkTypeRevisionMacro(vtkTemporalInterpolator, vtkTemporalDataSetAlgorithm);
00048 void PrintSelf(ostream& os, vtkIndent indent);
00049
00051
00058 vtkSetMacro(DiscreteTimeStepInterval, double);
00059 vtkGetMacro(DiscreteTimeStepInterval, double);
00061
00062 protected:
00063 vtkTemporalInterpolator();
00064 ~vtkTemporalInterpolator();
00065
00066 double DiscreteTimeStepInterval;
00067
00068
00069
00070
00071
00072
00073
00074 virtual int RequestUpdateExtent(vtkInformation *,
00075 vtkInformationVector **,
00076 vtkInformationVector *);
00077 virtual int RequestInformation(vtkInformation *,
00078 vtkInformationVector **,
00079 vtkInformationVector *);
00080
00081 virtual int RequestData(vtkInformation *,
00082 vtkInformationVector **,
00083 vtkInformationVector *);
00084
00086
00088 vtkDataObject *InterpolateDataObject(vtkDataObject *in1,
00089 vtkDataObject *in2,
00090 double ratio);
00092
00094
00097 vtkDataSet *InterpolateDataSet(vtkDataSet *in1,
00098 vtkDataSet *in2,
00099 double ratio);
00101
00103
00105 vtkDataArray *InterpolateDataArray(double ratio, vtkDataArray **arrays,
00106 vtkIdType N);
00108
00111 bool VerifyArrays(vtkDataArray **arrays, int N);
00112
00113 private:
00114 vtkTemporalInterpolator(const vtkTemporalInterpolator&);
00115 void operator=(const vtkTemporalInterpolator&);
00116 };
00117
00118
00119
00120 #endif
00121
00122
00123