VTK: Filters/Extraction/vtkExtractGeometry.h Source File

| VTK 9.3.1

vtkExtractGeometry.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
43 #ifndef vtkExtractGeometry_h
44 #define vtkExtractGeometry_h
45
46 #include "vtkFiltersExtractionModule.h" // For export macro
47 #include "vtkUnstructuredGridAlgorithm.h"
48
49 VTK_ABI_NAMESPACE_BEGIN
50 class vtkImplicitFunction;
51
52 class VTKFILTERSEXTRACTION_EXPORT vtkExtractGeometry : public vtkUnstructuredGridAlgorithm
53 {
54 public:
55 vtkTypeMacro(vtkExtractGeometry, vtkUnstructuredGridAlgorithm);
56 void PrintSelf(ostream& os, vtkIndent indent) override;
57
61 static vtkExtractGeometry* New();
62
66 vtkMTimeType GetMTime() override;
67
69
72 virtual void SetImplicitFunction(vtkImplicitFunction*);
73 vtkGetObjectMacro(ImplicitFunction, vtkImplicitFunction);
75
77
82 vtkSetMacro(ExtractInside, vtkTypeBool);
83 vtkGetMacro(ExtractInside, vtkTypeBool);
84 vtkBooleanMacro(ExtractInside, vtkTypeBool);
86
88
92 vtkSetMacro(ExtractBoundaryCells, vtkTypeBool);
93 vtkGetMacro(ExtractBoundaryCells, vtkTypeBool);
94 vtkBooleanMacro(ExtractBoundaryCells, vtkTypeBool);
95 vtkSetMacro(ExtractOnlyBoundaryCells, vtkTypeBool);
96 vtkGetMacro(ExtractOnlyBoundaryCells, vtkTypeBool);
97 vtkBooleanMacro(ExtractOnlyBoundaryCells, vtkTypeBool);
99
100 protected:
101 vtkExtractGeometry(vtkImplicitFunction* f = nullptr);
102 ~vtkExtractGeometry() override;
103
104 // Usual data generation method
105 int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
106
107 int FillInputPortInformation(int port, vtkInformation* info) override;
108
109 vtkImplicitFunction* ImplicitFunction;
110 vtkTypeBool ExtractInside;
111 vtkTypeBool ExtractBoundaryCells;
112 vtkTypeBool ExtractOnlyBoundaryCells;
113
114 private:
115 vtkExtractGeometry(const vtkExtractGeometry&) = delete;
116 void operator=(const vtkExtractGeometry&) = delete;
117 };
118
119 VTK_ABI_NAMESPACE_END
120 #endif
vtkExtractGeometry
extract cells that lie either entirely inside or outside of a specified implicit function
Definition: vtkExtractGeometry.h:53
vtkExtractGeometry::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkExtractGeometry::GetMTime
vtkMTimeType GetMTime() override
Return the MTime taking into account changes to the implicit function.
vtkExtractGeometry::FillInputPortInformation
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
vtkExtractGeometry::New
static vtkExtractGeometry * New()
Construct object with ExtractInside turned on.
vtkExtractGeometry::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkExtractGeometry::ImplicitFunction
vtkImplicitFunction * ImplicitFunction
Definition: vtkExtractGeometry.h:109
vtkExtractGeometry::~vtkExtractGeometry
~vtkExtractGeometry() override
vtkExtractGeometry::ExtractBoundaryCells
vtkTypeBool ExtractBoundaryCells
Definition: vtkExtractGeometry.h:111
vtkExtractGeometry::ExtractOnlyBoundaryCells
vtkTypeBool ExtractOnlyBoundaryCells
Definition: vtkExtractGeometry.h:112
vtkExtractGeometry::SetImplicitFunction
virtual void SetImplicitFunction(vtkImplicitFunction *)
Specify the implicit function for inside/outside checks.
vtkExtractGeometry::ExtractInside
vtkTypeBool ExtractInside
Definition: vtkExtractGeometry.h:110
vtkExtractGeometry::vtkExtractGeometry
vtkExtractGeometry(vtkImplicitFunction *f=nullptr)
vtkImplicitFunction
abstract interface for implicit functions
Definition: vtkImplicitFunction.h:59
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::info
@ info
Definition: vtkX3D.h:376
vtkX3D::port
@ port
Definition: vtkX3D.h:447
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:64
vtkMTimeType
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
vtkUnstructuredGridAlgorithm.h