81 #ifndef vtkGeometryFilter_h
82 #define vtkGeometryFilter_h
84 #include "vtkFiltersGeometryModule.h"
89 VTK_ABI_NAMESPACE_BEGIN
106 OTHER_LINEAR_CELLS = 4,
107 NON_LINEAR_CELLS = 5,
118 return this->CellTypesInfo[VERTS] && !this->CellTypesInfo[LINES] &&
119 !this->CellTypesInfo[POLYS] && !this->CellTypesInfo[STRIPS] &&
120 !this->CellTypesInfo[OTHER_LINEAR_CELLS] && !this->CellTypesInfo[NON_LINEAR_CELLS];
124 return !this->CellTypesInfo[VERTS] && this->CellTypesInfo[LINES] &&
125 !this->CellTypesInfo[POLYS] && !this->CellTypesInfo[STRIPS] &&
126 !this->CellTypesInfo[OTHER_LINEAR_CELLS] && !this->CellTypesInfo[NON_LINEAR_CELLS];
130 return !this->CellTypesInfo[VERTS] && !this->CellTypesInfo[LINES] &&
131 this->CellTypesInfo[POLYS] && !this->CellTypesInfo[STRIPS] &&
132 !this->CellTypesInfo[OTHER_LINEAR_CELLS] && !this->CellTypesInfo[NON_LINEAR_CELLS];
136 return !this->CellTypesInfo[VERTS] && !this->CellTypesInfo[LINES] &&
137 !this->CellTypesInfo[POLYS] && this->CellTypesInfo[STRIPS] &&
138 !this->CellTypesInfo[OTHER_LINEAR_CELLS] && !this->CellTypesInfo[NON_LINEAR_CELLS];
158 vtkSetMacro(PointClipping,
bool);
159 vtkGetMacro(PointClipping,
bool);
160 vtkBooleanMacro(PointClipping,
bool);
167 vtkSetMacro(CellClipping,
bool);
168 vtkGetMacro(CellClipping,
bool);
169 vtkBooleanMacro(CellClipping,
bool);
176 vtkSetMacro(ExtentClipping,
bool);
177 vtkGetMacro(ExtentClipping,
bool);
178 vtkBooleanMacro(ExtentClipping,
bool);
216 void SetExtent(
double xMin,
double xMax,
double yMin,
double yMax,
double zMin,
double zMax);
222 void SetExtent(
double extent[6]);
235 vtkSetMacro(Merging,
bool);
236 vtkGetMacro(Merging,
bool);
237 vtkBooleanMacro(Merging,
bool);
248 void SetOutputPointsPrecision(
int precision);
249 int GetOutputPointsPrecision()
const;
260 vtkSetMacro(FastMode,
bool);
261 vtkGetMacro(FastMode,
bool);
262 vtkBooleanMacro(FastMode,
bool);
273 vtkSetMacro(PieceInvariant,
int);
274 vtkGetMacro(PieceInvariant,
int);
310 vtkSetStringMacro(OriginalCellIdsName);
313 return (this->OriginalCellIdsName ? this->OriginalCellIdsName :
"vtkOriginalCellIds");
315 vtkSetStringMacro(OriginalPointIdsName);
318 return (this->OriginalPointIdsName ? this->OriginalPointIdsName :
"vtkOriginalPointIds");
351 vtkSetMacro(NonlinearSubdivisionLevel,
int);
352 vtkGetMacro(NonlinearSubdivisionLevel,
int);
362 vtkSetMacro(MatchBoundariesIgnoringCellOrder,
int);
363 vtkGetMacro(MatchBoundariesIgnoringCellOrder,
int);
387 vtkSetMacro(RemoveGhostInterfaces,
bool);
388 vtkBooleanMacro(RemoveGhostInterfaces,
bool);
389 vtkGetMacro(RemoveGhostInterfaces,
bool);
401 int UnstructuredGridExecute(
408 VTK_FUTURE_CONST
int wholeExt[6],
bool* extractFace =
nullptr);
474 VTK_ABI_NAMESPACE_END
vtkTypeUInt32 vtkMTimeType
abstract class to specify dataset behavior
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
Abstract class in support of both point location and point insertion.
concrete dataset represents vertices, lines, polygons, and triangle strips
char * OriginalCellIdsName
vtkTypeBool PassThroughPointIds
Proxy object to connect input/output ports.
static vtkPolyDataAlgorithm * New()
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
vtkMTimeType CachedUnstructuredInfoMTime
bool RemoveGhostInterfaces
vtkGeometryFilterHelper * CachedUnstructuredInfo
CellTypesInformation CellTypesInfo
int OutputPointsPrecision
#define VTK_SIZEHINT(...)
int NonlinearSubdivisionLevel
virtual const char * GetOriginalPointIdsName()
If PassThroughCellIds or PassThroughPointIds is on, then these ivars control the name given to the fi...
int MatchBoundariesIgnoringCellOrder
vtkTypeBool PassThroughCellIds
topologically regular array of data
double * GetExtent()
Set / get a (xmin,xmax, ymin,ymax, zmin,zmax) bounding box to clip data.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
extract boundary geometry from dataset (or convert data to polygonal type)
std::array< bool, NUM_CELL_TYPES > CellTypesInformation
Extracts outer surface (as vtkPolyData) of any dataset.
char * OriginalPointIdsName
dataset represents arbitrary combinations of all possible cell types.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkIncrementalPointLocator * Locator
virtual const char * GetOriginalCellIdsName()
If PassThroughCellIds or PassThroughPointIds is on, then these ivars control the name given to the fi...