VTK  9.3.20240423
vtkGenericClip.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
71#ifndef vtkGenericClip_h
72#define vtkGenericClip_h
73
74#include "vtkFiltersGenericModule.h" // For export macro
76
77VTK_ABI_NAMESPACE_BEGIN
79
80class vtkPointData;
81class vtkCellData;
83
84class VTKFILTERSGENERIC_EXPORT vtkGenericClip : public vtkUnstructuredGridAlgorithm
85{
86public:
88 void PrintSelf(ostream& os, vtkIndent indent) override;
89
95
97
102 vtkSetMacro(Value, double);
103 vtkGetMacro(Value, double);
105
107
115 vtkSetMacro(InsideOut, vtkTypeBool);
116 vtkGetMacro(InsideOut, vtkTypeBool);
117 vtkBooleanMacro(InsideOut, vtkTypeBool);
119
121
127 vtkGetObjectMacro(ClipFunction, vtkImplicitFunction);
129
131
137 vtkSetMacro(GenerateClipScalars, vtkTypeBool);
138 vtkGetMacro(GenerateClipScalars, vtkTypeBool);
139 vtkBooleanMacro(GenerateClipScalars, vtkTypeBool);
141
143
147 vtkSetMacro(GenerateClippedOutput, vtkTypeBool);
148 vtkGetMacro(GenerateClippedOutput, vtkTypeBool);
149 vtkBooleanMacro(GenerateClippedOutput, vtkTypeBool);
151
153
159 vtkSetClampMacro(MergeTolerance, double, 0.0001, 0.25);
160 vtkGetMacro(MergeTolerance, double);
162
164
168 virtual int GetNumberOfOutputs();
170
172
177 vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
179
185
190
192
196 vtkGetStringMacro(InputScalarsSelection);
197 void SelectInputScalars(const char* fieldName) { this->SetInputScalarsSelection(fieldName); }
199
200protected:
202 ~vtkGenericClip() override;
203
206
208
211 double Value;
213
216
218 vtkSetStringMacro(InputScalarsSelection);
219
220 // Used internal by vtkGenericAdaptorCell::Clip()
224
225private:
226 vtkGenericClip(const vtkGenericClip&) = delete;
227 void operator=(const vtkGenericClip&) = delete;
228};
229
230VTK_ABI_NAMESPACE_END
231#endif
represent and manipulate cell attribute data
clip any dataset with an implicit function or scalar data
vtkMTimeType GetMTime() override
Return the mtime also considering the locator and clip function.
vtkIncrementalPointLocator * Locator
vtkCellData * SecondaryCD
static vtkGenericClip * New()
Construct with user-specified implicit function; InsideOut turned off; value set to 0....
vtkPointData * InternalPD
~vtkGenericClip() override
vtkTypeBool GenerateClipScalars
vtkPointData * SecondaryPD
char * InputScalarsSelection
virtual int GetNumberOfOutputs()
Return the Clipped output.
vtkUnstructuredGrid * GetClippedOutput()
Return the Clipped output.
vtkTypeBool InsideOut
void SelectInputScalars(const char *fieldName)
If you want to clip by an arbitrary array, then set its name here.
virtual void SetClipFunction(vtkImplicitFunction *)
Specify the implicit function with which to perform the clipping.
vtkGenericClip(vtkImplicitFunction *cf=nullptr)
vtkTypeBool GenerateClippedOutput
int FillInputPortInformation(int, vtkInformation *) override
Fill the input port information objects for this algorithm.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkImplicitFunction * ClipFunction
void CreateDefaultLocator()
Create default locator.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetLocator(vtkIncrementalPointLocator *locator)
Specify a spatial locator for merging points.
abstract interface for implicit functions
Abstract class in support of both point location and point insertion.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
represent and manipulate point attribute data
Superclass for algorithms that produce only unstructured grid as output.
dataset represents arbitrary combinations of all possible cell types
int vtkTypeBool
Definition vtkABI.h:64
vtkTypeUInt32 vtkMTimeType
Definition vtkType.h:270