VTK  9.0.3
vtkStaticCleanPolyData.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkStaticCleanPolyData.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 =========================================================================*/
70 #ifndef vtkStaticCleanPolyData_h
71 #define vtkStaticCleanPolyData_h
72 
73 #include "vtkFiltersCoreModule.h" // For export macro
74 #include "vtkPolyDataAlgorithm.h"
75 
77 
78 class VTKFILTERSCORE_EXPORT vtkStaticCleanPolyData : public vtkPolyDataAlgorithm
79 {
80 public:
82 
86  void PrintSelf(ostream& os, vtkIndent indent) override;
89 
91 
96  vtkSetMacro(ToleranceIsAbsolute, vtkTypeBool);
97  vtkBooleanMacro(ToleranceIsAbsolute, vtkTypeBool);
98  vtkGetMacro(ToleranceIsAbsolute, vtkTypeBool);
100 
102 
106  vtkSetClampMacro(Tolerance, double, 0.0, 1.0);
107  vtkGetMacro(Tolerance, double);
109 
111 
114  vtkSetClampMacro(AbsoluteTolerance, double, 0.0, VTK_DOUBLE_MAX);
115  vtkGetMacro(AbsoluteTolerance, double);
117 
119 
122  vtkSetMacro(ConvertLinesToPoints, vtkTypeBool);
123  vtkBooleanMacro(ConvertLinesToPoints, vtkTypeBool);
124  vtkGetMacro(ConvertLinesToPoints, vtkTypeBool);
126 
128 
131  vtkSetMacro(ConvertPolysToLines, vtkTypeBool);
132  vtkBooleanMacro(ConvertPolysToLines, vtkTypeBool);
133  vtkGetMacro(ConvertPolysToLines, vtkTypeBool);
135 
137 
140  vtkSetMacro(ConvertStripsToPolys, vtkTypeBool);
141  vtkBooleanMacro(ConvertStripsToPolys, vtkTypeBool);
142  vtkGetMacro(ConvertStripsToPolys, vtkTypeBool);
144 
145  // This filter is difficult to stream.
146  // To get invariant results, the whole input must be processed at once.
147  // This flag allows the user to select whether strict piece invariance
148  // is required. By default it is on. When off, the filter can stream,
149  // but results may change.
150  vtkSetMacro(PieceInvariant, vtkTypeBool);
151  vtkGetMacro(PieceInvariant, vtkTypeBool);
152  vtkBooleanMacro(PieceInvariant, vtkTypeBool);
153 
155 
160  vtkSetMacro(OutputPointsPrecision, int);
161  vtkGetMacro(OutputPointsPrecision, int);
163 
165 
170  vtkStaticPointLocator* GetLocator() { return this->Locator; }
172 
176  vtkMTimeType GetMTime() override;
177 
178 protected:
181 
182  // Usual data generation method
185 
186  double Tolerance;
193 
196 
197 private:
199  void operator=(const vtkStaticCleanPolyData&) = delete;
200 };
201 
202 #endif
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
merge duplicate points, and/or remove unused points and/or remove degenerate cells
int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkMTimeType GetMTime() override
Get the MTime of this object also considering the locator.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkStaticPointLocator * GetLocator()
Retrieve the internal locator to manually configure it, for example specifying the number of points p...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkStaticPointLocator * Locator
~vtkStaticCleanPolyData() override
static vtkStaticCleanPolyData * New()
Standard methods to instantiate, print, and provide type information.
quickly locate points in 3-space
int vtkTypeBool
Definition: vtkABI.h:69
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:293
#define VTK_DOUBLE_MAX
Definition: vtkType.h:165