00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00052
#ifndef __vtkGeometryFilter_h
00053
#define __vtkGeometryFilter_h
00054
00055
#include "vtkDataSetToPolyDataFilter.h"
00056
00057
class vtkPointLocator;
00058
00059 class VTK_GRAPHICS_EXPORT vtkGeometryFilter :
public vtkDataSetToPolyDataFilter
00060 {
00061
public:
00062
static vtkGeometryFilter *
New();
00063 vtkTypeRevisionMacro(vtkGeometryFilter,
vtkDataSetToPolyDataFilter);
00064
void PrintSelf(ostream& os,
vtkIndent indent);
00065
00067
00068 vtkSetMacro(PointClipping,
int);
00069 vtkGetMacro(PointClipping,
int);
00070 vtkBooleanMacro(PointClipping,
int);
00072
00074
00075 vtkSetMacro(CellClipping,
int);
00076 vtkGetMacro(CellClipping,
int);
00077 vtkBooleanMacro(CellClipping,
int);
00079
00081
00082 vtkSetMacro(ExtentClipping,
int);
00083 vtkGetMacro(ExtentClipping,
int);
00084 vtkBooleanMacro(ExtentClipping,
int);
00086
00088
00089 vtkSetClampMacro(PointMinimum,
vtkIdType,0,VTK_LARGE_ID);
00090 vtkGetMacro(PointMinimum,
vtkIdType);
00092
00094
00095 vtkSetClampMacro(PointMaximum,
vtkIdType,0,VTK_LARGE_ID);
00096 vtkGetMacro(PointMaximum,
vtkIdType);
00098
00100
00101 vtkSetClampMacro(CellMinimum,
vtkIdType,0,VTK_LARGE_ID);
00102 vtkGetMacro(CellMinimum,
vtkIdType);
00104
00106
00107 vtkSetClampMacro(CellMaximum,
vtkIdType,0,VTK_LARGE_ID);
00108 vtkGetMacro(CellMaximum,
vtkIdType);
00110
00112
00114
void SetExtent(
double xMin,
double xMax,
double yMin,
double yMax,
00115
double zMin,
double zMax);
00117
00119
00121
void SetExtent(
double extent[6]);
00122 double *GetExtent() {
return this->Extent;};
00124
00126
00129 vtkSetMacro(Merging,
int);
00130 vtkGetMacro(Merging,
int);
00131 vtkBooleanMacro(Merging,
int);
00133
00135
00137
void SetLocator(
vtkPointLocator *locator);
00138 vtkGetObjectMacro(Locator,
vtkPointLocator);
00140
00142
void CreateDefaultLocator();
00143
00145
unsigned long GetMTime();
00146
00147
protected:
00148 vtkGeometryFilter();
00149 ~vtkGeometryFilter();
00150
00151
void Execute();
00152
void PolyDataExecute();
00153
void UnstructuredGridExecute();
00154
void StructuredGridExecute();
00155
void ComputeInputUpdateExtents(
vtkDataObject *output);
00156
void ExecuteInformation();
00157
00158 vtkIdType PointMaximum;
00159 vtkIdType PointMinimum;
00160 vtkIdType CellMinimum;
00161 vtkIdType CellMaximum;
00162 double Extent[6];
00163 int PointClipping;
00164 int CellClipping;
00165 int ExtentClipping;
00166
00167 int Merging;
00168 vtkPointLocator *Locator;
00169
private:
00170 vtkGeometryFilter(
const vtkGeometryFilter&);
00171
void operator=(
const vtkGeometryFilter&);
00172 };
00173
00174
#endif
00175
00176