VTK
vtkFeatureEdges.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkFeatureEdges.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 =========================================================================*/
38 #ifndef vtkFeatureEdges_h
39 #define vtkFeatureEdges_h
40 
41 #include "vtkFiltersCoreModule.h" // For export macro
42 #include "vtkPolyDataAlgorithm.h"
43 
45 
46 class VTKFILTERSCORE_EXPORT vtkFeatureEdges : public vtkPolyDataAlgorithm
47 {
48 public:
50  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
51 
56  static vtkFeatureEdges *New();
57 
59 
62  vtkSetMacro(BoundaryEdges,int);
63  vtkGetMacro(BoundaryEdges,int);
64  vtkBooleanMacro(BoundaryEdges,int);
66 
68 
71  vtkSetMacro(FeatureEdges,int);
72  vtkGetMacro(FeatureEdges,int);
73  vtkBooleanMacro(FeatureEdges,int);
75 
77 
80  vtkSetClampMacro(FeatureAngle,double,0.0,180.0);
81  vtkGetMacro(FeatureAngle,double);
83 
85 
88  vtkSetMacro(NonManifoldEdges,int);
89  vtkGetMacro(NonManifoldEdges,int);
90  vtkBooleanMacro(NonManifoldEdges,int);
92 
94 
97  vtkSetMacro(ManifoldEdges,int);
98  vtkGetMacro(ManifoldEdges,int);
99  vtkBooleanMacro(ManifoldEdges,int);
101 
103 
106  vtkSetMacro(Coloring,int);
107  vtkGetMacro(Coloring,int);
108  vtkBooleanMacro(Coloring,int);
110 
112 
116  void SetLocator(vtkIncrementalPointLocator *locator);
117  vtkGetObjectMacro(Locator,vtkIncrementalPointLocator);
119 
123  void CreateDefaultLocator();
124 
128  vtkMTimeType GetMTime() VTK_OVERRIDE;
129 
131 
136  vtkSetMacro(OutputPointsPrecision,int);
137  vtkGetMacro(OutputPointsPrecision,int);
139 
140 protected:
141  vtkFeatureEdges();
142  ~vtkFeatureEdges() VTK_OVERRIDE;
143 
144  // Usual data generation method
145  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
146  int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
147 
148  double FeatureAngle;
149  int BoundaryEdges;
150  int FeatureEdges;
151  int NonManifoldEdges;
152  int ManifoldEdges;
153  int Coloring;
154  int OutputPointsPrecision;
156 private:
157  vtkFeatureEdges(const vtkFeatureEdges&) VTK_DELETE_FUNCTION;
158  void operator=(const vtkFeatureEdges&) VTK_DELETE_FUNCTION;
159 };
160 
161 #endif
162 
163 
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:300
Abstract class in support of both point location and point insertion.
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:33
extract boundary, non-manifold, and/or sharp edges from polygonal data
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.