VTK: Filters/Extraction/vtkExtractUnstructuredGrid.h Source File

| VTK 9.3.1

vtkExtractUnstructuredGrid.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
30 #ifndef vtkExtractUnstructuredGrid_h
31 #define vtkExtractUnstructuredGrid_h
32
33 #include "vtkFiltersExtractionModule.h" // For export macro
34 #include "vtkUnstructuredGridAlgorithm.h"
35
36 VTK_ABI_NAMESPACE_BEGIN
37 class vtkIncrementalPointLocator;
38
39 class VTKFILTERSEXTRACTION_EXPORT vtkExtractUnstructuredGrid : public vtkUnstructuredGridAlgorithm
40 {
41 public:
42 vtkTypeMacro(vtkExtractUnstructuredGrid, vtkUnstructuredGridAlgorithm);
43 void PrintSelf(ostream& os, vtkIndent indent) override;
44
48 static vtkExtractUnstructuredGrid* New();
49
51
54 vtkSetMacro(PointClipping, vtkTypeBool);
55 vtkGetMacro(PointClipping, vtkTypeBool);
56 vtkBooleanMacro(PointClipping, vtkTypeBool);
58
60
63 vtkSetMacro(CellClipping, vtkTypeBool);
64 vtkGetMacro(CellClipping, vtkTypeBool);
65 vtkBooleanMacro(CellClipping, vtkTypeBool);
67
69
72 vtkSetMacro(ExtentClipping, vtkTypeBool);
73 vtkGetMacro(ExtentClipping, vtkTypeBool);
74 vtkBooleanMacro(ExtentClipping, vtkTypeBool);
76
78
81 vtkSetClampMacro(PointMinimum, vtkIdType, 0, VTK_ID_MAX);
82 vtkGetMacro(PointMinimum, vtkIdType);
84
86
89 vtkSetClampMacro(PointMaximum, vtkIdType, 0, VTK_ID_MAX);
90 vtkGetMacro(PointMaximum, vtkIdType);
92
94
97 vtkSetClampMacro(CellMinimum, vtkIdType, 0, VTK_ID_MAX);
98 vtkGetMacro(CellMinimum, vtkIdType);
100
102
105 vtkSetClampMacro(CellMaximum, vtkIdType, 0, VTK_ID_MAX);
106 vtkGetMacro(CellMaximum, vtkIdType);
108
112 void SetExtent(double xMin, double xMax, double yMin, double yMax, double zMin, double zMax);
113
115
118 void SetExtent(double extent[6]);
119 double* GetExtent() VTK_SIZEHINT(6) { return this->Extent; }
121
123
128 vtkSetMacro(Merging, vtkTypeBool);
129 vtkGetMacro(Merging, vtkTypeBool);
130 vtkBooleanMacro(Merging, vtkTypeBool);
132
134
138 void SetLocator(vtkIncrementalPointLocator* locator);
139 vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
141
145 void CreateDefaultLocator();
146
150 vtkMTimeType GetMTime() override;
151
152 protected:
153 vtkExtractUnstructuredGrid();
154 ~vtkExtractUnstructuredGrid() override = default;
155
156 int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
157
158 vtkIdType PointMinimum;
159 vtkIdType PointMaximum;
160 vtkIdType CellMinimum;
161 vtkIdType CellMaximum;
162 double Extent[6];
163 vtkTypeBool PointClipping;
164 vtkTypeBool CellClipping;
165 vtkTypeBool ExtentClipping;
166
167 vtkTypeBool Merging;
168 vtkIncrementalPointLocator* Locator;
169
170 private:
171 vtkExtractUnstructuredGrid(const vtkExtractUnstructuredGrid&) = delete;
172 void operator=(const vtkExtractUnstructuredGrid&) = delete;
173 };
174
175 VTK_ABI_NAMESPACE_END
176 #endif
vtkExtractUnstructuredGrid
extract subset of unstructured grid geometry
Definition: vtkExtractUnstructuredGrid.h:40
vtkExtractUnstructuredGrid::New
static vtkExtractUnstructuredGrid * New()
Construct with all types of clipping turned off.
vtkExtractUnstructuredGrid::SetExtent
void SetExtent(double extent[6])
Set / get a (xmin,xmax, ymin,ymax, zmin,zmax) bounding box to clip data.
vtkExtractUnstructuredGrid::SetExtent
void SetExtent(double xMin, double xMax, double yMin, double yMax, double zMin, double zMax)
Specify a (xmin,xmax, ymin,ymax, zmin,zmax) bounding box to clip data.
vtkExtractUnstructuredGrid::Merging
vtkTypeBool Merging
Definition: vtkExtractUnstructuredGrid.h:167
vtkExtractUnstructuredGrid::Locator
vtkIncrementalPointLocator * Locator
Definition: vtkExtractUnstructuredGrid.h:168
vtkExtractUnstructuredGrid::CreateDefaultLocator
void CreateDefaultLocator()
Create default locator.
vtkExtractUnstructuredGrid::GetExtent
double * GetExtent()
Set / get a (xmin,xmax, ymin,ymax, zmin,zmax) bounding box to clip data.
Definition: vtkExtractUnstructuredGrid.h:119
vtkExtractUnstructuredGrid::~vtkExtractUnstructuredGrid
~vtkExtractUnstructuredGrid() override=default
vtkExtractUnstructuredGrid::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkExtractUnstructuredGrid::CellMaximum
vtkIdType CellMaximum
Definition: vtkExtractUnstructuredGrid.h:161
vtkExtractUnstructuredGrid::ExtentClipping
vtkTypeBool ExtentClipping
Definition: vtkExtractUnstructuredGrid.h:165
vtkExtractUnstructuredGrid::CellClipping
vtkTypeBool CellClipping
Definition: vtkExtractUnstructuredGrid.h:164
vtkExtractUnstructuredGrid::CellMinimum
vtkIdType CellMinimum
Definition: vtkExtractUnstructuredGrid.h:160
vtkExtractUnstructuredGrid::GetMTime
vtkMTimeType GetMTime() override
Return the MTime also considering the locator.
vtkExtractUnstructuredGrid::PointClipping
vtkTypeBool PointClipping
Definition: vtkExtractUnstructuredGrid.h:163
vtkExtractUnstructuredGrid::SetLocator
void SetLocator(vtkIncrementalPointLocator *locator)
Set / get a spatial locator for merging points.
vtkExtractUnstructuredGrid::PointMinimum
vtkIdType PointMinimum
Definition: vtkExtractUnstructuredGrid.h:158
vtkExtractUnstructuredGrid::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkExtractUnstructuredGrid::vtkExtractUnstructuredGrid
vtkExtractUnstructuredGrid()
vtkExtractUnstructuredGrid::PointMaximum
vtkIdType PointMaximum
Definition: vtkExtractUnstructuredGrid.h:159
vtkIncrementalPointLocator
Abstract class in support of both point location and point insertion.
Definition: vtkIncrementalPointLocator.h:41
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:40
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:72
vtkUnstructuredGridAlgorithm
Superclass for algorithms that produce only unstructured grid as output.
Definition: vtkUnstructuredGridAlgorithm.h:30
vtkX3D::extent
@ extent
Definition: vtkX3D.h:345
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:64
vtkIdType
int vtkIdType
Definition: vtkType.h:315
VTK_ID_MAX
#define VTK_ID_MAX
Definition: vtkType.h:319
vtkMTimeType
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
vtkUnstructuredGridAlgorithm.h
VTK_SIZEHINT
#define VTK_SIZEHINT(...)
Definition: vtkWrappingHints.h:36