VTK
vtkDataSetRegionSurfaceFilter.h
Go to the documentation of this file.
1 //=========================================================================
2 // Copyright (c) Kitware, Inc.
3 // All rights reserved.
4 // See LICENSE.txt for details.
5 //
6 // This software is distributed WITHOUT ANY WARRANTY; without even
7 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
8 // PURPOSE. See the above copyright notice for more information.
9 //=========================================================================
24 #ifndef vtkDataSetRegionSurfaceFilter_h
25 #define vtkDataSetRegionSurfaceFilter_h
26 
27 #include "vtkFiltersGeometryModule.h" // For export macro
28 
30 
31 class vtkCharArray;
32 
33 class VTKFILTERSGEOMETRY_EXPORT vtkDataSetRegionSurfaceFilter : public vtkDataSetSurfaceFilter
34 {
35 public:
38  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
39 
41 
45  vtkSetStringMacro(RegionArrayName);
46  vtkGetStringMacro(RegionArrayName);
48 
50  vtkPolyData *output) VTK_OVERRIDE;
51 
52  //make it clear we want all the recordOrigCellId signatures from our parent
54 
55  //override one of the signatures
56  void RecordOrigCellId(vtkIdType newIndex, vtkFastGeomQuad *quad) VTK_OVERRIDE;
57 
59 
63  vtkSetMacro(SingleSided, bool);
64  vtkGetMacro(SingleSided, bool);
66 
68 
72  vtkSetStringMacro(MaterialPropertiesName);
73  vtkGetStringMacro(MaterialPropertiesName);
75 
77 
81  vtkSetStringMacro(MaterialIDsName);
82  vtkGetStringMacro(MaterialIDsName);
84 
86 
90  vtkSetStringMacro(MaterialPIDsName);
91  vtkGetStringMacro(MaterialPIDsName);
93 
95 
99  vtkSetStringMacro(InterfaceIDsName);
100  vtkGetStringMacro(InterfaceIDsName);
102 
103 protected:
106 
107  int FillInputPortInformation(int port, vtkInformation *info) VTK_OVERRIDE;
108 
110  int RequestData(vtkInformation *,
112  vtkInformationVector *) VTK_OVERRIDE;
113 
114  virtual void InsertQuadInHash(vtkIdType a, vtkIdType b, vtkIdType c,
115  vtkIdType d, vtkIdType sourceId, vtkIdType faceId);
116  void InsertQuadInHash(vtkIdType a, vtkIdType b, vtkIdType c,
117  vtkIdType d, vtkIdType sourceId) VTK_OVERRIDE
118  {
119  this->InsertQuadInHash(a,b,c,d,sourceId, -1); //for -Woverloaded-virtual comp warning
120  }
121 
123  vtkIdType sourceId, vtkIdType faceId) VTK_OVERRIDE;
125  vtkIdType sourceId)
126  {
127  this->InsertTriInHash(a,b,c,sourceId, -1); //for -Woverloaded-virtual comp warning
128  }
129 
131 
132 private:
134  void operator=(const vtkDataSetRegionSurfaceFilter&) VTK_DELETE_FUNCTION;
135 
136  char *RegionArrayName;
137  vtkIntArray *RegionArray;
138  vtkIdTypeArray *OrigCellIds;
139  vtkCharArray *CellFaceIds;
140  bool SingleSided;
141  char *MaterialPropertiesName;
142  char *MaterialIDsName;
143  char *MaterialPIDsName;
144  char *InterfaceIDsName;
145 
146  class Internals;
147  Internals *Internal;
148 };
149 
150 #endif
dynamic, self-adjusting array of char
Definition: vtkCharArray.h:39
static vtkDataSetRegionSurfaceFilter * New()
int UnstructuredGridExecute(vtkDataSet *input, vtkPolyData *output) override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkDataSetRegionSurfaceFilter() override
virtual void InsertTriInHash(vtkIdType a, vtkIdType b, vtkIdType c, vtkIdType sourceId)
void RecordOrigCellId(vtkIdType newIndex, vtkFastGeomQuad *quad) override
virtual vtkFastGeomQuad * GetNextVisibleQuadFromHash()
void InsertTriInHash(vtkIdType a, vtkIdType b, vtkIdType c, vtkIdType sourceId, vtkIdType faceId) override
Extracts outer (polygonal) surface.
void RecordOrigCellId(vtkIdType newIndex, vtkIdType origId)
virtual void InsertQuadInHash(vtkIdType a, vtkIdType b, vtkIdType c, vtkIdType d, vtkIdType sourceId)
virtual void InsertTriInHash(vtkIdType a, vtkIdType b, vtkIdType c, vtkIdType sourceId, vtkIdType faceId=-1)
abstract class to specify dataset behavior
Definition: vtkDataSet.h:63
dynamic, self-adjusting array of vtkIdType
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
dynamic, self-adjusting array of int
Definition: vtkIntArray.h:46
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:86
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
int vtkIdType
Definition: vtkType.h:287