VTK
vtkGenericGeometryFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkGenericGeometryFilter.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 =========================================================================*/
49 #ifndef __vtkGenericGeometryFilter_h
50 #define __vtkGenericGeometryFilter_h
51 
52 #include "vtkPolyDataAlgorithm.h"
53 
55 class vtkPointData;
56 
58 {
59 public:
60  static vtkGenericGeometryFilter *New();
62  void PrintSelf(ostream& os, vtkIndent indent);
63 
65 
66  vtkSetMacro(PointClipping,int);
67  vtkGetMacro(PointClipping,int);
68  vtkBooleanMacro(PointClipping,int);
70 
72 
73  vtkSetMacro(CellClipping,int);
74  vtkGetMacro(CellClipping,int);
75  vtkBooleanMacro(CellClipping,int);
77 
79 
80  vtkSetMacro(ExtentClipping,int);
81  vtkGetMacro(ExtentClipping,int);
82  vtkBooleanMacro(ExtentClipping,int);
84 
86 
87  vtkSetClampMacro(PointMinimum,vtkIdType,0,VTK_LARGE_ID);
88  vtkGetMacro(PointMinimum,vtkIdType);
90 
92 
93  vtkSetClampMacro(PointMaximum,vtkIdType,0,VTK_LARGE_ID);
94  vtkGetMacro(PointMaximum,vtkIdType);
96 
98 
99  vtkSetClampMacro(CellMinimum,vtkIdType,0,VTK_LARGE_ID);
100  vtkGetMacro(CellMinimum,vtkIdType);
102 
104 
105  vtkSetClampMacro(CellMaximum,vtkIdType,0,VTK_LARGE_ID);
106  vtkGetMacro(CellMaximum,vtkIdType);
108 
110 
112  void SetExtent(double xMin, double xMax, double yMin, double yMax,
113  double zMin, double zMax);
115 
117 
119  void SetExtent(double extent[6]);
120  double *GetExtent() { return this->Extent;};
122 
124 
127  vtkSetMacro(Merging,int);
128  vtkGetMacro(Merging,int);
129  vtkBooleanMacro(Merging,int);
131 
133 
135  void SetLocator(vtkIncrementalPointLocator *locator);
136  vtkGetObjectMacro(Locator,vtkIncrementalPointLocator);
138 
140  void CreateDefaultLocator();
141 
143  unsigned long GetMTime();
144 
146 
150  vtkSetMacro(PassThroughCellIds,int);
151  vtkGetMacro(PassThroughCellIds,int);
152  vtkBooleanMacro(PassThroughCellIds,int);
154 
155 protected:
158 
160  void PolyDataExecute(); //special cases for performance
161  void UnstructuredGridExecute();
162  void StructuredGridExecute();
165 
167 
172  double Extent[6];
176 
177  int Merging;
179 
180  // Used internal by vtkGenericAdaptorCell::Tessellate()
182 
184 
185 private:
186  vtkGenericGeometryFilter(const vtkGenericGeometryFilter&); // Not implemented.
187  void operator=(const vtkGenericGeometryFilter&); // Not implemented.
188 };
189 
190 #endif
191 
192 
virtual int FillInputPortInformation(int port, vtkInformation *info)
represent and manipulate point attribute data
Definition: vtkPointData.h:35
Store vtkAlgorithm input/output information.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Abstract class in support of both point location and point insertion.
int vtkIdType
Definition: vtkType.h:255
static vtkPolyDataAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent)
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Superclass for algorithms that produce only polydata as output.
extract geometry from data (or convert data to polygonal type)
virtual unsigned long GetMTime()
a simple class to control print indentation
Definition: vtkIndent.h:37
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkIncrementalPointLocator * Locator
#define VTK_LARGE_ID
Definition: vtkType.h:257
#define VTK_GENERIC_FILTERING_EXPORT
Store zero or more vtkInformation instances.