VTK  9.3.0
vtkCutMaterial.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
16 #ifndef vtkCutMaterial_h
17 #define vtkCutMaterial_h
18 
19 #include "vtkFiltersParallelModule.h" // For export macro
20 #include "vtkPolyDataAlgorithm.h"
21 
22 VTK_ABI_NAMESPACE_BEGIN
23 class vtkPlane;
24 
25 class VTKFILTERSPARALLEL_EXPORT vtkCutMaterial : public vtkPolyDataAlgorithm
26 {
27 public:
28  void PrintSelf(ostream& os, vtkIndent indent) override;
30  static vtkCutMaterial* New();
31 
33 
36  vtkSetStringMacro(MaterialArrayName);
37  vtkGetStringMacro(MaterialArrayName);
39 
41 
44  vtkSetMacro(Material, int);
45  vtkGetMacro(Material, int);
47 
49 
53  vtkSetStringMacro(ArrayName);
54  vtkGetStringMacro(ArrayName);
56 
58 
61  vtkSetVector3Macro(UpVector, double);
62  vtkGetVector3Macro(UpVector, double);
64 
66 
70  vtkGetVector3Macro(MaximumPoint, double);
71  vtkGetVector3Macro(CenterPoint, double);
72  vtkGetVector3Macro(Normal, double);
74 
75 protected:
77  ~vtkCutMaterial() override;
78 
80  vtkInformationVector*) override; // generate output data
83  void ComputeNormal();
84 
86  int Material;
87  char* ArrayName;
88  double UpVector[3];
89  double MaximumPoint[3];
90  double CenterPoint[3];
91  double Normal[3];
92 
94 
95 private:
96  vtkCutMaterial(const vtkCutMaterial&) = delete;
97  void operator=(const vtkCutMaterial&) = delete;
98 };
99 
100 VTK_ABI_NAMESPACE_END
101 #endif
Automatically computes the cut plane for a material array pair.
char * MaterialArrayName
vtkPlane * PlaneFunction
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
~vtkCutMaterial() override
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void ComputeNormal()
void ComputeMaximumPoint(vtkDataSet *input)
static vtkCutMaterial * New()
abstract class to specify dataset behavior
Definition: vtkDataSet.h:53
a simple class to control print indentation
Definition: vtkIndent.h:29
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
perform various plane computations
Definition: vtkPlane.h:26
Superclass for algorithms that produce only polydata as output.
@ Material
Definition: vtkX3D.h:38
@ Normal
Definition: vtkX3D.h:45
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447