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

dox/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 =========================================================================*/ 00061 #ifndef __vtkContourFilter_h 00062 #define __vtkContourFilter_h 00063 00064 #include "vtkDataSetToPolyDataFilter.h" 00065 00066 #include "vtkContourValues.h" // Needed for inline methods 00067 00068 class vtkPointLocator; 00069 class vtkScalarTree; 00070 00071 class VTK_GRAPHICS_EXPORT vtkContourFilter : public vtkDataSetToPolyDataFilter 00072 { 00073 public: 00074 vtkTypeRevisionMacro(vtkContourFilter,vtkDataSetToPolyDataFilter); 00075 void PrintSelf(ostream& os, vtkIndent indent); 00076 00079 static vtkContourFilter *New(); 00080 00082 00083 void SetValue(int i, float value); 00084 float GetValue(int i); 00085 float *GetValues(); 00086 void GetValues(float *contourValues); 00087 void SetNumberOfContours(int number); 00088 int GetNumberOfContours(); 00089 void GenerateValues(int numContours, float range[2]); 00090 void GenerateValues(int numContours, float rangeStart, float rangeEnd); 00092 00094 unsigned long GetMTime(); 00095 00097 00101 vtkSetMacro(ComputeNormals,int); 00102 vtkGetMacro(ComputeNormals,int); 00103 vtkBooleanMacro(ComputeNormals,int); 00105 00107 00113 vtkSetMacro(ComputeGradients,int); 00114 vtkGetMacro(ComputeGradients,int); 00115 vtkBooleanMacro(ComputeGradients,int); 00117 00119 00120 vtkSetMacro(ComputeScalars,int); 00121 vtkGetMacro(ComputeScalars,int); 00122 vtkBooleanMacro(ComputeScalars,int); 00124 00126 00127 vtkSetMacro(UseScalarTree,int); 00128 vtkGetMacro(UseScalarTree,int); 00129 vtkBooleanMacro(UseScalarTree,int); 00131 00133 00134 virtual void SetScalarTree(vtkScalarTree*); 00135 vtkGetObjectMacro(ScalarTree,vtkScalarTree); 00137 00139 00141 void SetLocator(vtkPointLocator *locator); 00142 vtkGetObjectMacro(Locator,vtkPointLocator); 00144 00147 void CreateDefaultLocator(); 00148 00149 protected: 00150 vtkContourFilter(); 00151 ~vtkContourFilter(); 00152 00153 void Execute(); 00154 00155 vtkContourValues *ContourValues; 00156 int ComputeNormals; 00157 int ComputeGradients; 00158 int ComputeScalars; 00159 vtkPointLocator *Locator; 00160 int UseScalarTree; 00161 vtkScalarTree *ScalarTree; 00162 00163 char *InputScalarsSelection; 00164 vtkSetStringMacro(InputScalarsSelection); 00165 00166 //BTX 00167 00168 // This is temporary solution. The sub-classes must be able 00169 // to call SelectInputScalars() on other instances. 00170 friend class vtkKitwareContourFilter; 00171 00173 00176 vtkGetStringMacro(InputScalarsSelection); 00177 virtual void SelectInputScalars(const char *fieldName) 00178 {this->SetInputScalarsSelection(fieldName);} 00180 00181 //ETX 00182 00183 private: 00184 vtkContourFilter(const vtkContourFilter&); // Not implemented. 00185 void operator=(const vtkContourFilter&); // Not implemented. 00186 }; 00187 00190 inline void vtkContourFilter::SetValue(int i, float value) 00191 {this->ContourValues->SetValue(i,value);} 00192 00194 00195 inline float vtkContourFilter::GetValue(int i) 00196 {return this->ContourValues->GetValue(i);} 00198 00200 00202 inline float *vtkContourFilter::GetValues() 00203 {return this->ContourValues->GetValues();} 00205 00209 inline void vtkContourFilter::GetValues(float *contourValues) 00210 {this->ContourValues->GetValues(contourValues);} 00211 00215 inline void vtkContourFilter::SetNumberOfContours(int number) 00216 {this->ContourValues->SetNumberOfContours(number);} 00217 00219 00220 inline int vtkContourFilter::GetNumberOfContours() 00221 {return this->ContourValues->GetNumberOfContours();} 00223 00225 00227 inline void vtkContourFilter::GenerateValues(int numContours, float range[2]) 00228 {this->ContourValues->GenerateValues(numContours, range);} 00230 00232 00234 inline void vtkContourFilter::GenerateValues(int numContours, float 00235 rangeStart, float rangeEnd) 00236 {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);} 00238 00239 00240 #endif 00241 00242