VTK
vtkFlyingEdgesPlaneCutter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkFlyingEdgesPlaneCutter.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 =========================================================================*/
52 #ifndef vtkFlyingEdgesPlaneCutter_h
53 #define vtkFlyingEdgesPlaneCutter_h
54 
55 #include "vtkFiltersCoreModule.h" // For export macro
56 #include "vtkPolyDataAlgorithm.h"
57 
58 class vtkImageData;
59 class vtkPlane;
60 
61 class VTKFILTERSCORE_EXPORT vtkFlyingEdgesPlaneCutter : public vtkPolyDataAlgorithm
62 {
63 public:
65 
70  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
72 
76  vtkMTimeType GetMTime() VTK_OVERRIDE;
77 
79 
84  virtual void SetPlane(vtkPlane*);
85  vtkGetObjectMacro(Plane,vtkPlane);
87 
89 
93  vtkSetMacro(ComputeNormals,int);
94  vtkGetMacro(ComputeNormals,int);
95  vtkBooleanMacro(ComputeNormals,int);
97 
99 
104  vtkSetMacro(InterpolateAttributes,int);
105  vtkGetMacro(InterpolateAttributes,int);
106  vtkBooleanMacro(InterpolateAttributes,int);
108 
110 
113  vtkSetMacro(ArrayComponent, int);
114  vtkGetMacro(ArrayComponent, int);
116 
117 protected:
119  ~vtkFlyingEdgesPlaneCutter() VTK_OVERRIDE;
120 
121  vtkPlane *Plane;
122  int ComputeNormals;
123  int InterpolateAttributes;
124  int ArrayComponent;
125 
126  int RequestData(vtkInformation *, vtkInformationVector **,
127  vtkInformationVector *) VTK_OVERRIDE;
128  int RequestUpdateExtent(vtkInformation *, vtkInformationVector **,
129  vtkInformationVector *) VTK_OVERRIDE;
130  int FillInputPortInformation(int port, vtkInformation *info) VTK_OVERRIDE;
131 
132 private:
133  vtkFlyingEdgesPlaneCutter(const vtkFlyingEdgesPlaneCutter&) VTK_DELETE_FUNCTION;
134  void operator=(const vtkFlyingEdgesPlaneCutter&) VTK_DELETE_FUNCTION;
135 };
136 
137 #endif
cut a volume with a plane and generate a polygonal cut surface
Store vtkAlgorithm input/output information.
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:39
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
virtual vtkMTimeType GetMTime()
Return this object's modified time.
perform various plane computations
Definition: vtkPlane.h:37
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.