VTK  9.5.20250716
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
52#ifndef vtkGenericClip_h
53#define vtkGenericClip_h
54
55#include "vtkFiltersGenericModule.h" // For export macro
57
58VTK_ABI_NAMESPACE_BEGIN
60
61class vtkPointData;
62class vtkCellData;
64
65class VTKFILTERSGENERIC_EXPORT vtkGenericClip : public vtkUnstructuredGridAlgorithm
66{
67public:
69 void PrintSelf(ostream& os, vtkIndent indent) override;
70
76
78
83 vtkSetMacro(Value, double);
84 vtkGetMacro(Value, double);
86
88
96 vtkSetMacro(InsideOut, vtkTypeBool);
97 vtkGetMacro(InsideOut, vtkTypeBool);
98 vtkBooleanMacro(InsideOut, vtkTypeBool);
100
102
108 vtkGetObjectMacro(ClipFunction, vtkImplicitFunction);
110
112
118 vtkSetMacro(GenerateClipScalars, vtkTypeBool);
119 vtkGetMacro(GenerateClipScalars, vtkTypeBool);
120 vtkBooleanMacro(GenerateClipScalars, vtkTypeBool);
122
124
128 vtkSetMacro(GenerateClippedOutput, vtkTypeBool);
129 vtkGetMacro(GenerateClippedOutput, vtkTypeBool);
130 vtkBooleanMacro(GenerateClippedOutput, vtkTypeBool);
132
134
140 vtkSetClampMacro(MergeTolerance, double, 0.0001, 0.25);
141 vtkGetMacro(MergeTolerance, double);
143
145
149 virtual int GetNumberOfOutputs();
151
153
158 vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
160
166
171
173
177 vtkGetStringMacro(InputScalarsSelection);
178 void SelectInputScalars(const char* fieldName) { this->SetInputScalarsSelection(fieldName); }
180
181protected:
183 ~vtkGenericClip() override;
184
187
189
192 double Value;
194
197
199 vtkSetStringMacro(InputScalarsSelection);
200
201 // Used internal by vtkGenericAdaptorCell::Clip()
205
206private:
207 vtkGenericClip(const vtkGenericClip&) = delete;
208 void operator=(const vtkGenericClip&) = delete;
209};
210
211VTK_ABI_NAMESPACE_END
212#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:287