vtkGenericClip.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00073 #ifndef __vtkGenericClip_h
00074 #define __vtkGenericClip_h
00075
00076 #include "vtkGenericDataSetToUnstructuredGridFilter.h"
00077
00078 class vtkImplicitFunction;
00079
00080 class vtkPointLocator;
00081
00082 class VTK_GENERIC_FILTERING_EXPORT vtkGenericClip : public vtkGenericDataSetToUnstructuredGridFilter
00083 {
00084 public:
00085 vtkTypeRevisionMacro(vtkGenericClip,vtkGenericDataSetToUnstructuredGridFilter);
00086 void PrintSelf(ostream& os, vtkIndent indent);
00087
00090 static vtkGenericClip *New();
00091
00093
00096 vtkSetMacro(Value,double);
00097 vtkGetMacro(Value,double);
00099
00101
00106 vtkSetMacro(InsideOut,int);
00107 vtkGetMacro(InsideOut,int);
00108 vtkBooleanMacro(InsideOut,int);
00110
00112
00115 virtual void SetClipFunction(vtkImplicitFunction*);
00116 vtkGetObjectMacro(ClipFunction,vtkImplicitFunction);
00118
00120
00124 vtkSetMacro(GenerateClipScalars,int);
00125 vtkGetMacro(GenerateClipScalars,int);
00126 vtkBooleanMacro(GenerateClipScalars,int);
00128
00130
00132 vtkSetMacro(GenerateClippedOutput,int);
00133 vtkGetMacro(GenerateClippedOutput,int);
00134 vtkBooleanMacro(GenerateClippedOutput,int);
00136
00138
00142 vtkSetClampMacro(MergeTolerance,double,0.0001,0.25);
00143 vtkGetMacro(MergeTolerance,double);
00145
00147
00148 vtkUnstructuredGrid *GetClippedOutput();
00149 virtual int GetNumberOfOutputs();
00151
00153
00155 void SetLocator(vtkPointLocator *locator);
00156 vtkGetObjectMacro(Locator,vtkPointLocator);
00158
00161 void CreateDefaultLocator();
00162
00164 unsigned long GetMTime();
00165
00167
00169 vtkGetStringMacro(InputScalarsSelection);
00170 void SelectInputScalars(const char *fieldName)
00171 {this->SetInputScalarsSelection(fieldName);}
00173
00174 protected:
00175 vtkGenericClip(vtkImplicitFunction *cf=NULL);
00176 ~vtkGenericClip();
00177
00178 void Execute();
00179 vtkImplicitFunction *ClipFunction;
00180
00181 vtkPointLocator *Locator;
00182 int InsideOut;
00183 double Value;
00184 int GenerateClipScalars;
00185
00186 int GenerateClippedOutput;
00187 double MergeTolerance;
00188
00189 char *InputScalarsSelection;
00190 vtkSetStringMacro(InputScalarsSelection);
00191
00192
00193 void ClipVolume();
00194
00195 private:
00196 vtkGenericClip(const vtkGenericClip&);
00197 void operator=(const vtkGenericClip&);
00198 };
00199
00200 #endif