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
31class vtkCharArray;
32
33class VTKFILTERSGEOMETRY_EXPORT vtkDataSetRegionSurfaceFilter : public vtkDataSetSurfaceFilter
34{
35public:
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
103protected:
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
132private:
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
virtual vtkFastGeomQuad * GetNextVisibleQuadFromHash()
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
static vtkDataSetRegionSurfaceFilter * New()
virtual void InsertTriInHash(vtkIdType a, vtkIdType b, vtkIdType c, vtkIdType sourceId)
void RecordOrigCellId(vtkIdType newIndex, vtkFastGeomQuad *quad) override
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