VTK
vtkGeometryFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkGeometryFilter.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
52 #ifndef __vtkGeometryFilter_h
53 #define __vtkGeometryFilter_h
54 
55 #include "vtkPolyDataAlgorithm.h"
56 
58 
60 {
61 public:
62  static vtkGeometryFilter *New();
64  void PrintSelf(ostream& os, vtkIndent indent);
65 
67 
68  vtkSetMacro(PointClipping,int);
69  vtkGetMacro(PointClipping,int);
70  vtkBooleanMacro(PointClipping,int);
72 
74 
75  vtkSetMacro(CellClipping,int);
76  vtkGetMacro(CellClipping,int);
77  vtkBooleanMacro(CellClipping,int);
79 
81 
82  vtkSetMacro(ExtentClipping,int);
83  vtkGetMacro(ExtentClipping,int);
84  vtkBooleanMacro(ExtentClipping,int);
86 
88 
89  vtkSetClampMacro(PointMinimum,vtkIdType,0,VTK_LARGE_ID);
90  vtkGetMacro(PointMinimum,vtkIdType);
92 
94 
95  vtkSetClampMacro(PointMaximum,vtkIdType,0,VTK_LARGE_ID);
96  vtkGetMacro(PointMaximum,vtkIdType);
98 
100 
101  vtkSetClampMacro(CellMinimum,vtkIdType,0,VTK_LARGE_ID);
102  vtkGetMacro(CellMinimum,vtkIdType);
104 
106 
107  vtkSetClampMacro(CellMaximum,vtkIdType,0,VTK_LARGE_ID);
108  vtkGetMacro(CellMaximum,vtkIdType);
110 
112 
114  void SetExtent(double xMin, double xMax, double yMin, double yMax,
115  double zMin, double zMax);
117 
119 
121  void SetExtent(double extent[6]);
122  double *GetExtent() { return this->Extent;};
124 
126 
129  vtkSetMacro(Merging,int);
130  vtkGetMacro(Merging,int);
131  vtkBooleanMacro(Merging,int);
133 
135 
137  void SetLocator(vtkIncrementalPointLocator *locator);
138  vtkGetObjectMacro(Locator,vtkIncrementalPointLocator);
140 
142  void CreateDefaultLocator();
143 
145  unsigned long GetMTime();
146 
147 protected:
150 
153 
154  //special cases for performance
155  void PolyDataExecute(vtkDataSet *, vtkPolyData *, vtkInformation *);
156  void UnstructuredGridExecute(vtkDataSet *, vtkPolyData *, vtkInformation *);
157  void StructuredGridExecute(vtkDataSet *, vtkPolyData *, vtkInformation *);
159 
164  double Extent[6];
168 
169  int Merging;
171 private:
172  vtkGeometryFilter(const vtkGeometryFilter&); // Not implemented.
173  void operator=(const vtkGeometryFilter&); // Not implemented.
174 };
175 
176 #endif
177 
178