VTK  9.7.1
vtkClipPolyData.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
50 #ifndef vtkClipPolyData_h
51 #define vtkClipPolyData_h
52 
53 #include "vtkFiltersCoreModule.h" // For export macro
54 #include "vtkPolyDataAlgorithm.h"
55 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
56 
57 VTK_ABI_NAMESPACE_BEGIN
60 
61 class VTKFILTERSCORE_EXPORT VTK_MARSHALAUTO vtkClipPolyData : public vtkPolyDataAlgorithm
62 {
63 public:
65  void PrintSelf(ostream& os, vtkIndent indent) override;
66 
72  static vtkClipPolyData* New();
73 
75 
80  vtkSetMacro(Value, double);
81  vtkGetMacro(Value, double);
83 
85 
93  vtkSetMacro(InsideOut, vtkTypeBool);
94  vtkGetMacro(InsideOut, vtkTypeBool);
95  vtkBooleanMacro(InsideOut, vtkTypeBool);
97 
99 
104  virtual void SetClipFunction(vtkImplicitFunction*);
105  vtkGetObjectMacro(ClipFunction, vtkImplicitFunction);
107 
109 
116  vtkSetMacro(GenerateClipScalars, vtkTypeBool);
117  vtkGetMacro(GenerateClipScalars, vtkTypeBool);
118  vtkBooleanMacro(GenerateClipScalars, vtkTypeBool);
120 
122 
127  vtkSetMacro(GenerateClippedOutput, vtkTypeBool);
128  vtkGetMacro(GenerateClippedOutput, vtkTypeBool);
129  vtkBooleanMacro(GenerateClippedOutput, vtkTypeBool);
131 
135  vtkPolyData* GetClippedOutput();
136 
141 
143 
147  void SetLocator(vtkIncrementalPointLocator* locator);
148  vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
150 
155  void CreateDefaultLocator();
156 
160  vtkMTimeType GetMTime() override;
161 
163 
169  vtkSetMacro(OutputPointsPrecision, int);
170  vtkGetMacro(OutputPointsPrecision, int);
172 
173 protected:
174  vtkClipPolyData(vtkImplicitFunction* cf = nullptr);
175  ~vtkClipPolyData() override;
176 
179 
182  double Value;
186 
187 private:
188  vtkClipPolyData(const vtkClipPolyData&) = delete;
189  void operator=(const vtkClipPolyData&) = delete;
190 };
191 
192 VTK_ABI_NAMESPACE_END
193 #endif
abstract interface for implicit functions
vtkAlgorithmOutput * GetOutputPort()
Definition: vtkAlgorithm.h:621
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:318
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
vtkIncrementalPointLocator * Locator
Abstract class in support of both point location and point insertion.
vtkTypeBool GenerateClippedOutput
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:71
Proxy object to connect input/output ports.
static vtkPolyDataAlgorithm * New()
int vtkTypeBool
Definition: vtkABI.h:64
vtkTypeBool GenerateClipScalars
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:28
vtkTypeBool InsideOut
vtkAlgorithmOutput * GetClippedOutputPort()
Return the output port (a vtkAlgorithmOutput) of the clipped output.
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkImplicitFunction * ClipFunction
clip polygonal data with user-specified implicit function or input scalar data
Store zero or more vtkInformation instances.
#define VTK_MARSHALAUTO
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.