00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00043 #ifndef __vtkExtractGeometry_h
00044 #define __vtkExtractGeometry_h
00045
00046 #include "vtkUnstructuredGridAlgorithm.h"
00047
00048 class vtkImplicitFunction;
00049
00050 class VTK_GRAPHICS_EXPORT vtkExtractGeometry : public vtkUnstructuredGridAlgorithm
00051 {
00052 public:
00053 vtkTypeMacro(vtkExtractGeometry,vtkUnstructuredGridAlgorithm);
00054 void PrintSelf(ostream& os, vtkIndent indent);
00055
00057 static vtkExtractGeometry *New();
00058
00060 unsigned long GetMTime();
00061
00063
00064 virtual void SetImplicitFunction(vtkImplicitFunction*);
00065 vtkGetObjectMacro(ImplicitFunction,vtkImplicitFunction);
00067
00069
00072 vtkSetMacro(ExtractInside,int);
00073 vtkGetMacro(ExtractInside,int);
00074 vtkBooleanMacro(ExtractInside,int);
00076
00078
00080 vtkSetMacro(ExtractBoundaryCells,int);
00081 vtkGetMacro(ExtractBoundaryCells,int);
00082 vtkBooleanMacro(ExtractBoundaryCells,int);
00083 vtkSetMacro(ExtractOnlyBoundaryCells,int);
00084 vtkGetMacro(ExtractOnlyBoundaryCells,int);
00085 vtkBooleanMacro(ExtractOnlyBoundaryCells,int);
00087
00088 protected:
00089 vtkExtractGeometry(vtkImplicitFunction *f=NULL);
00090 ~vtkExtractGeometry();
00091
00092
00093 virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00094
00095 virtual int FillInputPortInformation(int port, vtkInformation *info);
00096
00097 vtkImplicitFunction *ImplicitFunction;
00098 int ExtractInside;
00099 int ExtractBoundaryCells;
00100 int ExtractOnlyBoundaryCells;
00101
00102 private:
00103 vtkExtractGeometry(const vtkExtractGeometry&);
00104 void operator=(const vtkExtractGeometry&);
00105 };
00106
00107 #endif
00108
00109