VTK  9.3.0
vtkDistancePolyDataFilter.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
40 #ifndef vtkDistancePolyDataFilter_h
41 #define vtkDistancePolyDataFilter_h
42 
43 #include "vtkFiltersGeneralModule.h" // For export macro
44 #include "vtkPolyDataAlgorithm.h"
45 
46 VTK_ABI_NAMESPACE_BEGIN
47 class VTKFILTERSGENERAL_EXPORT vtkDistancePolyDataFilter : public vtkPolyDataAlgorithm
48 {
49 public:
52  void PrintSelf(ostream& os, vtkIndent indent) override;
53 
55 
59  vtkSetMacro(SignedDistance, vtkTypeBool);
60  vtkGetMacro(SignedDistance, vtkTypeBool);
61  vtkBooleanMacro(SignedDistance, vtkTypeBool);
63 
65 
69  vtkSetMacro(NegateDistance, vtkTypeBool);
70  vtkGetMacro(NegateDistance, vtkTypeBool);
71  vtkBooleanMacro(NegateDistance, vtkTypeBool);
73 
75 
79  vtkSetMacro(ComputeSecondDistance, vtkTypeBool);
80  vtkGetMacro(ComputeSecondDistance, vtkTypeBool);
81  vtkBooleanMacro(ComputeSecondDistance, vtkTypeBool);
83 
91 
93 
100  vtkSetMacro(ComputeCellCenterDistance, vtkTypeBool);
101  vtkGetMacro(ComputeCellCenterDistance, vtkTypeBool);
102  vtkBooleanMacro(ComputeCellCenterDistance, vtkTypeBool);
104 
106 
110  vtkSetMacro(ComputeDirection, vtkTypeBool);
111  vtkGetMacro(ComputeDirection, vtkTypeBool);
112  vtkBooleanMacro(ComputeDirection, vtkTypeBool);
114 
115 protected:
118 
121 
122 private:
124  void operator=(const vtkDistancePolyDataFilter&) = delete;
125 
126  vtkTypeBool SignedDistance;
127  vtkTypeBool NegateDistance;
128  vtkTypeBool ComputeSecondDistance;
129  vtkTypeBool ComputeCellCenterDistance;
130  vtkTypeBool ComputeDirection;
131 };
132 
133 VTK_ABI_NAMESPACE_END
134 #endif
Computes the signed distance from one vtkPolyData to another.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
static vtkDistancePolyDataFilter * New()
vtkPolyData * GetSecondDistanceOutput()
Get the second output, which is a copy of the second input with an additional distance scalar field.
void GetPolyDataDistance(vtkPolyData *, vtkPolyData *)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkDistancePolyDataFilter() override
a simple class to control print indentation
Definition: vtkIndent.h:38
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:89
int vtkTypeBool
Definition: vtkABI.h:64