VTK: Filters/Core/vtkFlyingEdgesPlaneCutter.h Source File

| VTK 9.3.1

vtkFlyingEdgesPlaneCutter.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
44 #ifndef vtkFlyingEdgesPlaneCutter_h
45 #define vtkFlyingEdgesPlaneCutter_h
46
47 #include "vtkFiltersCoreModule.h" // For export macro
48 #include "vtkPolyDataAlgorithm.h"
49
50 VTK_ABI_NAMESPACE_BEGIN
51 class vtkImageData;
52 class vtkPlane;
53
54 class VTKFILTERSCORE_EXPORT vtkFlyingEdgesPlaneCutter : public vtkPolyDataAlgorithm
55 {
56 public:
58
61 static vtkFlyingEdgesPlaneCutter* New();
62 vtkTypeMacro(vtkFlyingEdgesPlaneCutter, vtkPolyDataAlgorithm);
63 void PrintSelf(ostream& os, vtkIndent indent) override;
65
69 vtkMTimeType GetMTime() override;
70
72
77 virtual void SetPlane(vtkPlane*);
78 vtkGetObjectMacro(Plane, vtkPlane);
80
82
86 vtkSetMacro(ComputeNormals, vtkTypeBool);
87 vtkGetMacro(ComputeNormals, vtkTypeBool);
88 vtkBooleanMacro(ComputeNormals, vtkTypeBool);
90
92
97 vtkSetMacro(InterpolateAttributes, vtkTypeBool);
98 vtkGetMacro(InterpolateAttributes, vtkTypeBool);
99 vtkBooleanMacro(InterpolateAttributes, vtkTypeBool);
101
103
106 vtkSetMacro(ArrayComponent, int);
107 vtkGetMacro(ArrayComponent, int);
109
110 protected:
111 vtkFlyingEdgesPlaneCutter();
112 ~vtkFlyingEdgesPlaneCutter() override;
113
114 vtkPlane* Plane;
115 vtkTypeBool ComputeNormals;
116 vtkTypeBool InterpolateAttributes;
117 int ArrayComponent;
118
119 int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
120 int RequestUpdateExtent(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
121 int FillInputPortInformation(int port, vtkInformation* info) override;
122
123 private:
124 vtkFlyingEdgesPlaneCutter(const vtkFlyingEdgesPlaneCutter&) = delete;
125 void operator=(const vtkFlyingEdgesPlaneCutter&) = delete;
126 };
127
128 VTK_ABI_NAMESPACE_END
129 #endif
vtkFlyingEdgesPlaneCutter
cut a volume with a plane and generate a polygonal cut surface
Definition: vtkFlyingEdgesPlaneCutter.h:55
vtkFlyingEdgesPlaneCutter::vtkFlyingEdgesPlaneCutter
vtkFlyingEdgesPlaneCutter()
vtkFlyingEdgesPlaneCutter::RequestUpdateExtent
int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkFlyingEdgesPlaneCutter::InterpolateAttributes
vtkTypeBool InterpolateAttributes
Definition: vtkFlyingEdgesPlaneCutter.h:116
vtkFlyingEdgesPlaneCutter::SetPlane
virtual void SetPlane(vtkPlane *)
Specify the plane (an implicit function) to perform the cutting.
vtkFlyingEdgesPlaneCutter::~vtkFlyingEdgesPlaneCutter
~vtkFlyingEdgesPlaneCutter() override
vtkFlyingEdgesPlaneCutter::ComputeNormals
vtkTypeBool ComputeNormals
Definition: vtkFlyingEdgesPlaneCutter.h:115
vtkFlyingEdgesPlaneCutter::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkFlyingEdgesPlaneCutter::ArrayComponent
int ArrayComponent
Definition: vtkFlyingEdgesPlaneCutter.h:117
vtkFlyingEdgesPlaneCutter::GetMTime
vtkMTimeType GetMTime() override
The modified time depends on the delegated cut plane.
vtkFlyingEdgesPlaneCutter::FillInputPortInformation
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
vtkFlyingEdgesPlaneCutter::New
static vtkFlyingEdgesPlaneCutter * New()
Standard construction and print methods.
vtkFlyingEdgesPlaneCutter::Plane
vtkPlane * Plane
Definition: vtkFlyingEdgesPlaneCutter.h:114
vtkFlyingEdgesPlaneCutter::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Standard construction and print methods.
vtkImageData
topologically and geometrically regular array of data
Definition: vtkImageData.h:52
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:40
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:72
vtkPlane
perform various plane computations
Definition: vtkPlane.h:35
vtkPolyDataAlgorithm
Superclass for algorithms that produce only polydata as output.
Definition: vtkPolyDataAlgorithm.h:43
vtkX3D::info
@ info
Definition: vtkX3D.h:376
vtkX3D::port
@ port
Definition: vtkX3D.h:447
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:64
vtkPolyDataAlgorithm.h
vtkMTimeType
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270