VTK  9.2.20230205
vtkDistancePolyDataFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkDistancePolyDataFilter.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 =========================================================================*/
59 #ifndef vtkDistancePolyDataFilter_h
60 #define vtkDistancePolyDataFilter_h
61 
62 #include "vtkFiltersGeneralModule.h" // For export macro
63 #include "vtkPolyDataAlgorithm.h"
64 
65 VTK_ABI_NAMESPACE_BEGIN
66 class VTKFILTERSGENERAL_EXPORT vtkDistancePolyDataFilter : public vtkPolyDataAlgorithm
67 {
68 public:
71  void PrintSelf(ostream& os, vtkIndent indent) override;
72 
74 
78  vtkSetMacro(SignedDistance, vtkTypeBool);
79  vtkGetMacro(SignedDistance, vtkTypeBool);
80  vtkBooleanMacro(SignedDistance, vtkTypeBool);
82 
84 
88  vtkSetMacro(NegateDistance, vtkTypeBool);
89  vtkGetMacro(NegateDistance, vtkTypeBool);
90  vtkBooleanMacro(NegateDistance, vtkTypeBool);
92 
94 
98  vtkSetMacro(ComputeSecondDistance, vtkTypeBool);
99  vtkGetMacro(ComputeSecondDistance, vtkTypeBool);
100  vtkBooleanMacro(ComputeSecondDistance, vtkTypeBool);
102 
110 
112 
119  vtkSetMacro(ComputeCellCenterDistance, vtkTypeBool);
120  vtkGetMacro(ComputeCellCenterDistance, vtkTypeBool);
121  vtkBooleanMacro(ComputeCellCenterDistance, vtkTypeBool);
123 
124 protected:
127 
130 
131 private:
133  void operator=(const vtkDistancePolyDataFilter&) = delete;
134 
135  vtkTypeBool SignedDistance;
136  vtkTypeBool NegateDistance;
137  vtkTypeBool ComputeSecondDistance;
138  vtkTypeBool ComputeCellCenterDistance;
139 };
140 
141 VTK_ABI_NAMESPACE_END
142 #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:120
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:201
int vtkTypeBool
Definition: vtkABI.h:71