VTK  9.3.0
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
61#ifndef vtkGenericClip_h
62#define vtkGenericClip_h
63
64#include "vtkFiltersGenericModule.h" // For export macro
66
67VTK_ABI_NAMESPACE_BEGIN
69
70class vtkPointData;
71class vtkCellData;
73
74class VTKFILTERSGENERIC_EXPORT vtkGenericClip : public vtkUnstructuredGridAlgorithm
75{
76public:
78 void PrintSelf(ostream& os, vtkIndent indent) override;
79
85
87
92 vtkSetMacro(Value, double);
93 vtkGetMacro(Value, double);
95
97
105 vtkSetMacro(InsideOut, vtkTypeBool);
106 vtkGetMacro(InsideOut, vtkTypeBool);
107 vtkBooleanMacro(InsideOut, vtkTypeBool);
109
111
117 vtkGetObjectMacro(ClipFunction, vtkImplicitFunction);
119
121
127 vtkSetMacro(GenerateClipScalars, vtkTypeBool);
128 vtkGetMacro(GenerateClipScalars, vtkTypeBool);
129 vtkBooleanMacro(GenerateClipScalars, vtkTypeBool);
131
133
137 vtkSetMacro(GenerateClippedOutput, vtkTypeBool);
138 vtkGetMacro(GenerateClippedOutput, vtkTypeBool);
139 vtkBooleanMacro(GenerateClippedOutput, vtkTypeBool);
141
143
149 vtkSetClampMacro(MergeTolerance, double, 0.0001, 0.25);
150 vtkGetMacro(MergeTolerance, double);
152
154
158 virtual int GetNumberOfOutputs();
160
162
167 vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
169
175
180
182
186 vtkGetStringMacro(InputScalarsSelection);
187 void SelectInputScalars(const char* fieldName) { this->SetInputScalarsSelection(fieldName); }
189
190protected:
192 ~vtkGenericClip() override;
193
196
198
201 double Value;
203
206
208 vtkSetStringMacro(InputScalarsSelection);
209
210 // Used internal by vtkGenericAdaptorCell::Clip()
214
215private:
216 vtkGenericClip(const vtkGenericClip&) = delete;
217 void operator=(const vtkGenericClip&) = delete;
218};
219
220VTK_ABI_NAMESPACE_END
221#endif
represent and manipulate cell attribute data
Definition vtkCellData.h:40
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:38
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