Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages
Graphics/vtkCutter.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00062 #ifndef __vtkCutter_h
00063 #define __vtkCutter_h
00064
00065 #include "vtkDataSetToPolyDataFilter.h"
00066
00067 #include "vtkContourValues.h"
00068
00069 #define VTK_SORT_BY_VALUE 0
00070 #define VTK_SORT_BY_CELL 1
00071
00072 class vtkImplicitFunction;
00073 class vtkPointLocator;
00074
00075 class VTK_GRAPHICS_EXPORT vtkCutter : public vtkDataSetToPolyDataFilter
00076 {
00077 public:
00078 vtkTypeRevisionMacro(vtkCutter,vtkDataSetToPolyDataFilter);
00079 void PrintSelf(ostream& os, vtkIndent indent);
00080
00083 static vtkCutter *New();
00084
00086
00088 void SetValue(int i, float value)
00089 {this->ContourValues->SetValue(i,value);}
00091
00093
00094 float GetValue(int i)
00095 {return this->ContourValues->GetValue(i);}
00097
00099
00101 float *GetValues()
00102 {return this->ContourValues->GetValues();}
00104
00106
00109 void GetValues(float *contourValues)
00110 {this->ContourValues->GetValues(contourValues);}
00112
00114
00117 void SetNumberOfContours(int number)
00118 {this->ContourValues->SetNumberOfContours(number);}
00120
00122
00123 int GetNumberOfContours()
00124 {return this->ContourValues->GetNumberOfContours();}
00126
00128
00130 void GenerateValues(int numContours, float range[2])
00131 {this->ContourValues->GenerateValues(numContours, range);}
00133
00135
00137 void GenerateValues(int numContours, float rangeStart, float rangeEnd)
00138 {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
00140
00143 unsigned long GetMTime();
00144
00146
00147 virtual void SetCutFunction(vtkImplicitFunction*);
00148 vtkGetObjectMacro(CutFunction,vtkImplicitFunction);
00150
00152
00155 vtkSetMacro(GenerateCutScalars,int);
00156 vtkGetMacro(GenerateCutScalars,int);
00157 vtkBooleanMacro(GenerateCutScalars,int);
00159
00161
00163 void SetLocator(vtkPointLocator *locator);
00164 vtkGetObjectMacro(Locator,vtkPointLocator);
00166
00168
00176 vtkSetClampMacro(SortBy,int,VTK_SORT_BY_VALUE,VTK_SORT_BY_CELL);
00177 vtkGetMacro(SortBy,int);
00178 void SetSortByToSortByValue()
00179 {this->SetSortBy(VTK_SORT_BY_VALUE);}
00180 void SetSortByToSortByCell()
00181 {this->SetSortBy(VTK_SORT_BY_CELL);}
00182 const char *GetSortByAsString();
00184
00187 void CreateDefaultLocator();
00188
00189 protected:
00190 vtkCutter(vtkImplicitFunction *cf=NULL);
00191 ~vtkCutter();
00192
00193 void Execute();
00194 vtkImplicitFunction *CutFunction;
00195
00196 vtkPointLocator *Locator;
00197 int SortBy;
00198 vtkContourValues *ContourValues;
00199 int GenerateCutScalars;
00200 private:
00201 vtkCutter(const vtkCutter&);
00202 void operator=(const vtkCutter&);
00203 };
00204
00206 inline const char *vtkCutter::GetSortByAsString(void)
00207 {
00208 if ( this->SortBy == VTK_SORT_BY_VALUE )
00209 {
00210 return "SortByValue";
00211 }
00212 else
00213 {
00214 return "SortByCell";
00215 }
00216 }
00217
00218
00219 #endif
00220
00221