VTK  9.2.20230320
vtkClipPolyData.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkClipPolyData.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
171 #ifndef vtkClipPolyData_h
172 #define vtkClipPolyData_h
173 
174 #include "vtkFiltersCoreModule.h" // For export macro
175 #include "vtkPolyDataAlgorithm.h"
176 
177 VTK_ABI_NAMESPACE_BEGIN
178 class vtkImplicitFunction;
180 
181 class VTKFILTERSCORE_EXPORT vtkClipPolyData : public vtkPolyDataAlgorithm
182 {
183 public:
185  void PrintSelf(ostream& os, vtkIndent indent) override;
186 
192  static vtkClipPolyData* New();
193 
195 
200  vtkSetMacro(Value, double);
201  vtkGetMacro(Value, double);
203 
205 
213  vtkSetMacro(InsideOut, vtkTypeBool);
214  vtkGetMacro(InsideOut, vtkTypeBool);
215  vtkBooleanMacro(InsideOut, vtkTypeBool);
217 
219 
225  vtkGetObjectMacro(ClipFunction, vtkImplicitFunction);
227 
229 
236  vtkSetMacro(GenerateClipScalars, vtkTypeBool);
237  vtkGetMacro(GenerateClipScalars, vtkTypeBool);
238  vtkBooleanMacro(GenerateClipScalars, vtkTypeBool);
240 
242 
247  vtkSetMacro(GenerateClippedOutput, vtkTypeBool);
248  vtkGetMacro(GenerateClippedOutput, vtkTypeBool);
249  vtkBooleanMacro(GenerateClippedOutput, vtkTypeBool);
251 
256 
261 
263 
268  vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
270 
276 
280  vtkMTimeType GetMTime() override;
281 
283 
289  vtkSetMacro(OutputPointsPrecision, int);
290  vtkGetMacro(OutputPointsPrecision, int);
292 
293 protected:
295  ~vtkClipPolyData() override;
296 
299 
302  double Value;
306 
307 private:
308  vtkClipPolyData(const vtkClipPolyData&) = delete;
309  void operator=(const vtkClipPolyData&) = delete;
310 };
311 
312 VTK_ABI_NAMESPACE_END
313 #endif
Proxy object to connect input/output ports.
vtkAlgorithmOutput * GetOutputPort()
Definition: vtkAlgorithm.h:571
clip polygonal data with user-specified implicit function or input scalar data
vtkClipPolyData(vtkImplicitFunction *cf=nullptr)
vtkTypeBool GenerateClipScalars
vtkIncrementalPointLocator * Locator
vtkImplicitFunction * ClipFunction
vtkPolyData * GetClippedOutput()
Return the Clipped output.
void CreateDefaultLocator()
Create default locator.
vtkTypeBool InsideOut
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkTypeBool GenerateClippedOutput
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkMTimeType GetMTime() override
Return the mtime also considering the locator and clip function.
static vtkClipPolyData * New()
Construct with user-specified implicit function; InsideOut turned off; value set to 0....
void SetLocator(vtkIncrementalPointLocator *locator)
Specify a spatial locator for merging points.
virtual void SetClipFunction(vtkImplicitFunction *)
Specify the implicit function with which to perform the clipping.
vtkAlgorithmOutput * GetClippedOutputPort()
Return the output port (a vtkAlgorithmOutput) of the clipped output.
~vtkClipPolyData() override
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:120
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:201
int vtkTypeBool
Definition: vtkABI.h:71
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:282