Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkGenericContourFilter.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkGenericContourFilter.h,v $
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 =========================================================================*/
00064 #ifndef __vtkGenericContourFilter_h
00065 #define __vtkGenericContourFilter_h
00066 
00067 #include "vtkGenericDataSetToPolyDataFilter.h"
00068 
00069 class vtkContourValues;
00070 class vtkPointLocator;
00071 
00072 class VTK_GENERIC_FILTERING_EXPORT vtkGenericContourFilter : public vtkGenericDataSetToPolyDataFilter
00073 {
00074 public:
00075   vtkTypeRevisionMacro(vtkGenericContourFilter,
00076                        vtkGenericDataSetToPolyDataFilter);
00077   
00078   void PrintSelf(ostream& os, vtkIndent indent);
00079 
00082   static vtkGenericContourFilter *New();
00083   
00084   //BTX
00085   typedef double PointType[3];  // Arbitrary definition of a point
00086   //ETX
00087   
00089 
00090   void SetValue(int i, float value);
00091   double GetValue(int i);
00092   double *GetValues();
00093   void GetValues(double *contourValues);
00094   void SetNumberOfContours(int number);
00095   int GetNumberOfContours();
00096   void GenerateValues(int numContours, double range[2]);
00097   void GenerateValues(int numContours, double rangeStart, double rangeEnd);
00099 
00101   unsigned long GetMTime();
00102 
00104 
00108   vtkSetMacro(ComputeNormals,int);
00109   vtkGetMacro(ComputeNormals,int);
00110   vtkBooleanMacro(ComputeNormals,int);
00112 
00114 
00120   vtkSetMacro(ComputeGradients,int);
00121   vtkGetMacro(ComputeGradients,int);
00122   vtkBooleanMacro(ComputeGradients,int);
00124 
00126 
00127   vtkSetMacro(ComputeScalars,int);
00128   vtkGetMacro(ComputeScalars,int);
00129   vtkBooleanMacro(ComputeScalars,int);
00131 
00133 
00135   void SetLocator(vtkPointLocator *locator);
00136   vtkGetObjectMacro(Locator,vtkPointLocator);
00138 
00141   void CreateDefaultLocator();
00142 
00144 
00147   vtkGetStringMacro(InputScalarsSelection);
00148   virtual void SelectInputScalars(const char *fieldName);
00150 
00151 protected:
00152   vtkGenericContourFilter();
00153   ~vtkGenericContourFilter();
00154 
00155   void Execute();
00156 
00157   vtkContourValues *ContourValues;
00158   int ComputeNormals;
00159   int ComputeGradients;
00160   int ComputeScalars;
00161   vtkPointLocator *Locator;
00162   
00163   char *InputScalarsSelection;
00164   vtkSetStringMacro(InputScalarsSelection);
00165   
00166 private:
00167   vtkGenericContourFilter(const vtkGenericContourFilter&);  // Not implemented.
00168   void operator=(const vtkGenericContourFilter&);  // Not implemented.
00169 };
00170 #endif