VTK
/Users/kitware/Dashboards/MyTests/VTK_BLD_Release_docs/Utilities/Doxygen/dox/Filters/General/vtkCellDerivatives.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkCellDerivatives.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 =========================================================================*/
00047 #ifndef vtkCellDerivatives_h
00048 #define vtkCellDerivatives_h
00049 
00050 #include "vtkFiltersGeneralModule.h" // For export macro
00051 #include "vtkDataSetAlgorithm.h"
00052 
00053 #define VTK_VECTOR_MODE_PASS_VECTORS      0
00054 #define VTK_VECTOR_MODE_COMPUTE_GRADIENT  1
00055 #define VTK_VECTOR_MODE_COMPUTE_VORTICITY 2
00056 
00057 #define VTK_TENSOR_MODE_PASS_TENSORS     0
00058 #define VTK_TENSOR_MODE_COMPUTE_GRADIENT 1
00059 #define VTK_TENSOR_MODE_COMPUTE_STRAIN   2
00060 
00061 class VTKFILTERSGENERAL_EXPORT vtkCellDerivatives : public vtkDataSetAlgorithm
00062 {
00063 public:
00064   vtkTypeMacro(vtkCellDerivatives,vtkDataSetAlgorithm);
00065   void PrintSelf(ostream& os, vtkIndent indent);
00066 
00068   static vtkCellDerivatives *New();
00069 
00071 
00076   vtkSetMacro(VectorMode,int);
00077   vtkGetMacro(VectorMode,int);
00078   void SetVectorModeToPassVectors()
00079     {this->SetVectorMode(VTK_VECTOR_MODE_PASS_VECTORS);};
00080   void SetVectorModeToComputeGradient()
00081     {this->SetVectorMode(VTK_VECTOR_MODE_COMPUTE_GRADIENT);};
00082   void SetVectorModeToComputeVorticity()
00083     {this->SetVectorMode(VTK_VECTOR_MODE_COMPUTE_VORTICITY);};
00084   const char *GetVectorModeAsString();
00086 
00088 
00093   vtkSetMacro(TensorMode,int);
00094   vtkGetMacro(TensorMode,int);
00095   void SetTensorModeToPassTensors()
00096     {this->SetTensorMode(VTK_TENSOR_MODE_PASS_TENSORS);};
00097   void SetTensorModeToComputeGradient()
00098     {this->SetTensorMode(VTK_TENSOR_MODE_COMPUTE_GRADIENT);};
00099   void SetTensorModeToComputeStrain()
00100     {this->SetTensorMode(VTK_TENSOR_MODE_COMPUTE_STRAIN);};
00101   const char *GetTensorModeAsString();
00103 
00104 protected:
00105   vtkCellDerivatives();
00106   ~vtkCellDerivatives() {}
00107   int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00108 
00109   int VectorMode;
00110   int TensorMode;
00111 private:
00112   vtkCellDerivatives(const vtkCellDerivatives&);  // Not implemented.
00113   void operator=(const vtkCellDerivatives&);  // Not implemented.
00114 };
00115 
00116 #endif