VTK
vtkUnstructuredGridGeometryFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkUnstructuredGridGeometryFilter.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 =========================================================================*/
44 #ifndef vtkUnstructuredGridGeometryFilter_h
45 #define vtkUnstructuredGridGeometryFilter_h
46 
47 #include "vtkFiltersGeometryModule.h" // For export macro
49 
51 class vtkHashTableOfSurfels; // internal class
52 
53 class VTKFILTERSGEOMETRY_EXPORT vtkUnstructuredGridGeometryFilter
55 {
56 public:
60  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
61 
63 
66  vtkSetMacro(PointClipping,int);
67  vtkGetMacro(PointClipping,int);
68  vtkBooleanMacro(PointClipping,int);
70 
72 
75  vtkSetMacro(CellClipping,int);
76  vtkGetMacro(CellClipping,int);
77  vtkBooleanMacro(CellClipping,int);
79 
81 
84  vtkSetMacro(ExtentClipping,int);
85  vtkGetMacro(ExtentClipping,int);
86  vtkBooleanMacro(ExtentClipping,int);
88 
90 
93  vtkSetClampMacro(PointMinimum,vtkIdType,0,VTK_ID_MAX);
94  vtkGetMacro(PointMinimum,vtkIdType);
96 
98 
101  vtkSetClampMacro(PointMaximum,vtkIdType,0,VTK_ID_MAX);
102  vtkGetMacro(PointMaximum,vtkIdType);
104 
106 
109  vtkSetClampMacro(CellMinimum,vtkIdType,0,VTK_ID_MAX);
110  vtkGetMacro(CellMinimum,vtkIdType);
112 
114 
117  vtkSetClampMacro(CellMaximum,vtkIdType,0,VTK_ID_MAX);
118  vtkGetMacro(CellMaximum,vtkIdType);
120 
124  void SetExtent(double xMin, double xMax, double yMin, double yMax,
125  double zMin, double zMax);
126 
128 
131  void SetExtent(double extent[6]);
132  double *GetExtent() { return this->Extent;};
134 
136 
141  vtkSetMacro(Merging,int);
142  vtkGetMacro(Merging,int);
143  vtkBooleanMacro(Merging,int);
145 
147 
155  vtkSetMacro(PassThroughCellIds,int);
156  vtkGetMacro(PassThroughCellIds,int);
157  vtkBooleanMacro(PassThroughCellIds,int);
158  vtkSetMacro(PassThroughPointIds,int);
159  vtkGetMacro(PassThroughPointIds,int);
160  vtkBooleanMacro(PassThroughPointIds,int);
162 
164 
170  vtkSetStringMacro(OriginalCellIdsName);
171  virtual const char *GetOriginalCellIdsName() {
172  return ( this->OriginalCellIdsName
173  ? this->OriginalCellIdsName : "vtkOriginalCellIds");
174  }
175  vtkSetStringMacro(OriginalPointIdsName);
176  virtual const char *GetOriginalPointIdsName() {
177  return ( this->OriginalPointIdsName
178  ? this->OriginalPointIdsName : "vtkOriginalPointIds");
179  }
181 
183 
187  void SetLocator(vtkIncrementalPointLocator *locator);
188  vtkGetObjectMacro(Locator,vtkIncrementalPointLocator);
190 
194  void CreateDefaultLocator();
195 
199  vtkMTimeType GetMTime() VTK_OVERRIDE;
200 
201 protected:
203  ~vtkUnstructuredGridGeometryFilter() VTK_OVERRIDE;
204 
205  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
206  int FillInputPortInformation(int port, vtkInformation *info) VTK_OVERRIDE;
207 
208  int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
209 
210  vtkIdType PointMaximum;
211  vtkIdType PointMinimum;
212  vtkIdType CellMinimum;
213  vtkIdType CellMaximum;
214  double Extent[6];
215  int PointClipping;
216  int CellClipping;
217  int ExtentClipping;
218 
219  int PassThroughCellIds;
220  int PassThroughPointIds;
221  char *OriginalCellIdsName;
222  char *OriginalPointIdsName;
223 
224  int Merging;
226 
227  vtkHashTableOfSurfels *HashTable;
228 
229 private:
230  vtkUnstructuredGridGeometryFilter(const vtkUnstructuredGridGeometryFilter&) VTK_DELETE_FUNCTION;
231  void operator=(const vtkUnstructuredGridGeometryFilter&) VTK_DELETE_FUNCTION;
232 };
233 
234 #endif
virtual const char * GetOriginalPointIdsName()
If PassThroughCellIds or PassThroughPointIds is on, then these ivars control the name given to the fi...
Superclass for algorithms that produce only vtkUnstructureGridBase subclasses as output.
virtual const char * GetOriginalCellIdsName()
If PassThroughCellIds or PassThroughPointIds is on, then these ivars control the name given to the fi...
Store vtkAlgorithm input/output information.
Abstract class in support of both point location and point insertion.
int vtkIdType
Definition: vtkType.h:287
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248
a simple class to control print indentation
Definition: vtkIndent.h:39
virtual vtkMTimeType GetMTime()
Return this object's modified time.
static vtkUnstructuredGridBaseAlgorithm * New()
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
extract geometry from an unstructured grid
#define VTK_ID_MAX
Definition: vtkType.h:291
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.