VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkGradientFilter.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00015 /*---------------------------------------------------------------------------- 00016 Copyright (c) Sandia Corporation 00017 See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details. 00018 ----------------------------------------------------------------------------*/ 00019 00037 #ifndef __vtkGradientFilter_h 00038 #define __vtkGradientFilter_h 00039 00040 #include "vtkDataSetAlgorithm.h" 00041 00042 class VTK_GRAPHICS_EXPORT vtkGradientFilter : public vtkDataSetAlgorithm 00043 { 00044 public: 00045 vtkTypeMacro(vtkGradientFilter, vtkDataSetAlgorithm); 00046 virtual void PrintSelf(ostream &os, vtkIndent indent); 00047 00048 static vtkGradientFilter *New(); 00049 00051 00056 virtual void SetInputScalars(int fieldAssociation, const char *name); 00057 virtual void SetInputScalars(int fieldAssociation, int fieldAttributeType); 00059 00061 00063 vtkGetStringMacro(ResultArrayName); 00064 vtkSetStringMacro(ResultArrayName); 00066 00068 00075 vtkGetMacro(FasterApproximation, int); 00076 vtkSetMacro(FasterApproximation, int); 00077 vtkBooleanMacro(FasterApproximation, int); 00079 00081 00083 vtkSetMacro(ComputeVorticity, int); 00084 vtkGetMacro(ComputeVorticity, int); 00085 vtkBooleanMacro(ComputeVorticity, int); 00087 00089 00094 vtkSetMacro(ComputeQCriterion, int); 00095 vtkGetMacro(ComputeQCriterion, int); 00096 vtkBooleanMacro(ComputeQCriterion, int); 00098 00099 protected: 00100 vtkGradientFilter(); 00101 ~vtkGradientFilter(); 00102 00103 virtual int RequestUpdateExtent(vtkInformation *, 00104 vtkInformationVector **, 00105 vtkInformationVector *); 00106 virtual int RequestData(vtkInformation *, vtkInformationVector **, 00107 vtkInformationVector *); 00108 00110 00113 virtual int ComputeUnstructuredGridGradient( 00114 vtkDataArray* Array, int fieldAssociation, vtkDataSet* input, 00115 vtkDataSet* output); 00117 00119 00122 virtual int ComputeRegularGridGradient( 00123 vtkDataArray* Array, int fieldAssociation, vtkDataSet* output); 00125 00127 char *ResultArrayName; 00128 00136 int FasterApproximation; 00137 00141 int ComputeQCriterion; 00142 00146 int ComputeVorticity; 00147 00148 private: 00149 vtkGradientFilter(const vtkGradientFilter &); // Not implemented 00150 void operator=(const vtkGradientFilter &); // Not implemented 00151 }; 00152 00153 #endif //_vtkGradientFilter_h