VTK  9.1.0
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 =========================================================================*/
45 #ifndef vtkPolyDataPlaneClipper_h
46 #define vtkPolyDataPlaneClipper_h
47 
48 #include "vtkFiltersCoreModule.h" // For export macro
49 #include "vtkPlane.h" // For clipping plane
50 #include "vtkPolyDataAlgorithm.h"
51 #include "vtkSmartPointer.h" // For SmartPointer
52 
53 class VTKFILTERSCORE_EXPORT vtkPolyDataPlaneClipper : public vtkPolyDataAlgorithm
54 {
55 public:
57 
62  void PrintSelf(ostream& os, vtkIndent indent) override;
64 
68  vtkMTimeType GetMTime() override;
69 
71 
77  vtkGetObjectMacro(Plane, vtkPlane);
79 
81 
89  vtkSetMacro(ClippingLoops, bool);
90  vtkGetMacro(ClippingLoops, bool);
91  vtkBooleanMacro(ClippingLoops, bool);
93 
95 
104  vtkSetMacro(Capping, bool);
105  vtkGetMacro(Capping, bool);
106  vtkBooleanMacro(Capping, bool);
108 
117 
119 
125  vtkSetMacro(OutputPointsPrecision, int);
126  vtkGetMacro(OutputPointsPrecision, int);
128 
130 
136  vtkSetClampMacro(BatchSize, unsigned int, 1, VTK_INT_MAX);
137  vtkGetMacro(BatchSize, unsigned int);
139 
140 protected:
143 
146  bool Capping;
148  unsigned int BatchSize;
149 
150  // Pipeline-related methods
152 
153 private:
155  void operator=(const vtkPolyDataPlaneClipper&) = delete;
156 };
157 
158 #endif
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
perform various plane computations
Definition: vtkPlane.h:34
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.
void SetPlane(vtkPlane *)
Specify the plane (an implicit function) to perform the clipping.
~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.
static vtkPolyDataPlaneClipper * New()
Standard construction, type, and print methods.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkSmartPointer< vtkPlane > Plane
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:86
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287
#define VTK_INT_MAX
Definition: vtkType.h:155