VTK  9.2.5
vtkPolyDataPlaneClipper.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkPolyDataPlaneClipper.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=========================================================================*/
54#ifndef vtkPolyDataPlaneClipper_h
55#define vtkPolyDataPlaneClipper_h
56
57#include "vtkFiltersCoreModule.h" // For export macro
58#include "vtkPlane.h" // For clipping plane
60#include "vtkPolyDataPlaneCutter.h" // For CanFullyProcessDataObject() method
61#include "vtkSmartPointer.h" // For SmartPointer
62
63class VTKFILTERSCORE_EXPORT vtkPolyDataPlaneClipper : public vtkPolyDataAlgorithm
64{
65public:
67
72 void PrintSelf(ostream& os, vtkIndent indent) override;
74
79
81
87 vtkGetObjectMacro(Plane, vtkPlane);
89
91
99 vtkSetMacro(ClippingLoops, bool);
100 vtkGetMacro(ClippingLoops, bool);
101 vtkBooleanMacro(ClippingLoops, bool);
103
105
114 vtkSetMacro(Capping, bool);
115 vtkGetMacro(Capping, bool);
116 vtkBooleanMacro(Capping, bool);
118
127
129
134 vtkSetMacro(PassCapPointData, bool);
135 vtkGetMacro(PassCapPointData, bool);
136 vtkBooleanMacro(PassCapPointData, bool);
138
140
146 vtkSetMacro(OutputPointsPrecision, int);
147 vtkGetMacro(OutputPointsPrecision, int);
149
151
157 vtkSetClampMacro(BatchSize, unsigned int, 1, VTK_INT_MAX);
158 vtkGetMacro(BatchSize, unsigned int);
160
171 {
173 }
174
175protected:
178
184 unsigned int BatchSize;
185
186 // Pipeline-related methods
188
189private:
191 void operator=(const vtkPolyDataPlaneClipper&) = delete;
192};
193
194#endif
general representation of visualization data
Definition: vtkDataObject.h:66
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
perform various plane computations
Definition: vtkPlane.h:37
Superclass for algorithms that produce only polydata as output.
clip a vtkPolyData with a plane and optionally cap it
vtkPolyData * GetCap()
Get the output dataset representing the clipping loops and capping polygons.
static vtkPolyDataPlaneClipper * New()
Standard construction, type, and print methods.
void SetPlane(vtkPlane *)
Specify the plane (an implicit function) to perform the clipping.
static bool CanFullyProcessDataObject(vtkDataObject *object)
This helper method can be used to determine the if the input vtkPolyData contains convex polygonal ce...
~vtkPolyDataPlaneClipper() override
void PrintSelf(ostream &os, vtkIndent indent) override
Standard construction, type, and print methods.
vtkMTimeType GetMTime() override
The modified time depends on the delegated clipping plane.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkSmartPointer< vtkPlane > Plane
static bool CanFullyProcessDataObject(vtkDataObject *object)
This helper method can be used to determine the if the input vtkPolyData contains convex polygonal ce...
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:91
Hold a reference to a vtkObjectBase instance.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287
#define VTK_INT_MAX
Definition: vtkType.h:155