VTK  9.2.6
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 =========================================================================*/
62 #ifndef vtkClipPolyData_h
63 #define vtkClipPolyData_h
64 
65 #include "vtkFiltersCoreModule.h" // For export macro
66 #include "vtkPolyDataAlgorithm.h"
67 
70 
71 class VTKFILTERSCORE_EXPORT vtkClipPolyData : public vtkPolyDataAlgorithm
72 {
73 public:
75  void PrintSelf(ostream& os, vtkIndent indent) override;
76 
82  static vtkClipPolyData* New();
83 
85 
90  vtkSetMacro(Value, double);
91  vtkGetMacro(Value, double);
93 
95 
103  vtkSetMacro(InsideOut, vtkTypeBool);
104  vtkGetMacro(InsideOut, vtkTypeBool);
105  vtkBooleanMacro(InsideOut, vtkTypeBool);
107 
109 
114  virtual void SetClipFunction(vtkImplicitFunction*);
115  vtkGetObjectMacro(ClipFunction, vtkImplicitFunction);
117 
119 
126  vtkSetMacro(GenerateClipScalars, vtkTypeBool);
127  vtkGetMacro(GenerateClipScalars, vtkTypeBool);
128  vtkBooleanMacro(GenerateClipScalars, vtkTypeBool);
130 
132 
137  vtkSetMacro(GenerateClippedOutput, vtkTypeBool);
138  vtkGetMacro(GenerateClippedOutput, vtkTypeBool);
139  vtkBooleanMacro(GenerateClippedOutput, vtkTypeBool);
141 
145  vtkPolyData* GetClippedOutput();
146 
151 
153 
157  void SetLocator(vtkIncrementalPointLocator* locator);
158  vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
160 
165  void CreateDefaultLocator();
166 
170  vtkMTimeType GetMTime() override;
171 
173 
179  vtkSetMacro(OutputPointsPrecision, int);
180  vtkGetMacro(OutputPointsPrecision, int);
182 
183 protected:
184  vtkClipPolyData(vtkImplicitFunction* cf = nullptr);
185  ~vtkClipPolyData() override;
186 
189 
192  double Value;
196 
197 private:
198  vtkClipPolyData(const vtkClipPolyData&) = delete;
199  void operator=(const vtkClipPolyData&) = delete;
200 };
201 
202 #endif
abstract interface for implicit functions
vtkAlgorithmOutput * GetOutputPort()
Definition: vtkAlgorithm.h:470
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287
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:90
Proxy object to connect input/output ports.
static vtkPolyDataAlgorithm * New()
int vtkTypeBool
Definition: vtkABI.h:69
vtkTypeBool GenerateClipScalars
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:39
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.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.