Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# Graphics/vtkContourFilter.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkContourFilter.h,v $
    00005   Language:  C++
    00006
    00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
    00008   All rights reserved.
    00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
    00010
    00011      This software is distributed WITHOUT ANY WARRANTY; without even
    00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    00013      PURPOSE.  See the above copyright notice for more information.
    00014
    00015 =========================================================================*/
    00075 #ifndef __vtkContourFilter_h
    00076 #define __vtkContourFilter_h
    00077
    00078 #include "vtkDataSetToPolyDataFilter.h"
    00079
    00080 #include "vtkContourValues.h" // Needed for inline methods
    00081
    00082 class vtkPointLocator;
    00083 class vtkScalarTree;
    00084
    00085 class VTK_GRAPHICS_EXPORT vtkContourFilter : public vtkDataSetToPolyDataFilter
    00086 {
    00087 public:
    00088   vtkTypeRevisionMacro(vtkContourFilter,vtkDataSetToPolyDataFilter);
    00089   void PrintSelf(ostream& os, vtkIndent indent);
    00090
    00093   static vtkContourFilter *New();
    00094
    00096
    00097   void SetValue(int i, float value);
    00098   float GetValue(int i);
    00099   float *GetValues();
    00100   void GetValues(float *contourValues);
    00101   void SetNumberOfContours(int number);
    00102   int GetNumberOfContours();
    00103   void GenerateValues(int numContours, float range[2]);
    00104   void GenerateValues(int numContours, float rangeStart, float rangeEnd);
    00106
    00108   unsigned long GetMTime();
    00109
    00111
    00115   vtkSetMacro(ComputeNormals,int);
    00116   vtkGetMacro(ComputeNormals,int);
    00117   vtkBooleanMacro(ComputeNormals,int);
    00119
    00121
    00127   vtkSetMacro(ComputeGradients,int);
    00128   vtkGetMacro(ComputeGradients,int);
    00129   vtkBooleanMacro(ComputeGradients,int);
    00131
    00133
    00134   vtkSetMacro(ComputeScalars,int);
    00135   vtkGetMacro(ComputeScalars,int);
    00136   vtkBooleanMacro(ComputeScalars,int);
    00138
    00140
    00141   vtkSetMacro(UseScalarTree,int);
    00142   vtkGetMacro(UseScalarTree,int);
    00143   vtkBooleanMacro(UseScalarTree,int);
    00145
    00147
    00148   virtual void SetScalarTree(vtkScalarTree*);
    00149   vtkGetObjectMacro(ScalarTree,vtkScalarTree);
    00151
    00153
    00155   void SetLocator(vtkPointLocator *locator);
    00156   vtkGetObjectMacro(Locator,vtkPointLocator);
    00158
    00161   void CreateDefaultLocator();
    00162
    00163 protected:
    00164   vtkContourFilter();
    00165   ~vtkContourFilter();
    00166
    00167   void Execute();
    00168
    00169   vtkContourValues *ContourValues;
    00170   int ComputeNormals;
    00171   int ComputeGradients;
    00172   int ComputeScalars;
    00173   vtkPointLocator *Locator;
    00174   int UseScalarTree;
    00175   vtkScalarTree *ScalarTree;
    00176
    00177   char *InputScalarsSelection;
    00178   vtkSetStringMacro(InputScalarsSelection);
    00179
    00180 //BTX
    00181
    00182   // This is temporary solution. The sub-classes must be able
    00183   // to call SelectInputScalars() on other instances.
    00184   friend class vtkKitwareContourFilter;
    00185
    00187
    00190   vtkGetStringMacro(InputScalarsSelection);
    00191   virtual void SelectInputScalars(const char *fieldName)
    00192     {this->SetInputScalarsSelection(fieldName);}
    00194
    00195 //ETX
    00196
    00197 private:
    00198   vtkContourFilter(const vtkContourFilter&);  // Not implemented.
    00199   void operator=(const vtkContourFilter&);  // Not implemented.
    00200 };
    00201
    00204 inline void vtkContourFilter::SetValue(int i, float value)
    00205 {this->ContourValues->SetValue(i,value);}
    00206
    00208
    00209 inline float vtkContourFilter::GetValue(int i)
    00210 {return this->ContourValues->GetValue(i);}
    00212
    00214
    00216 inline float *vtkContourFilter::GetValues()
    00217 {return this->ContourValues->GetValues();}
    00219
    00223 inline void vtkContourFilter::GetValues(float *contourValues)
    00224 {this->ContourValues->GetValues(contourValues);}
    00225
    00229 inline void vtkContourFilter::SetNumberOfContours(int number)
    00230 {this->ContourValues->SetNumberOfContours(number);}
    00231
    00233
    00234 inline int vtkContourFilter::GetNumberOfContours()
    00235 {return this->ContourValues->GetNumberOfContours();}
    00237
    00239
    00241 inline void vtkContourFilter::GenerateValues(int numContours, float range[2])
    00242 {this->ContourValues->GenerateValues(numContours, range);}
    00244
    00246
    00248 inline void vtkContourFilter::GenerateValues(int numContours, float
    00249                                              rangeStart, float rangeEnd)
    00250 {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
    00252
    00253
    00254 #endif
    00255
    00256