VTK  9.3.0
vtkHausdorffDistancePointSetFilter.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-FileCopyrightText: Copyright (c) 2011 LTSI INSERM U642
3// SPDX-License-Identifier: BSD-3-Clause
39#ifndef vtkHausdorffDistancePointSetFilter_h
40#define vtkHausdorffDistancePointSetFilter_h
41
42#include "vtkFiltersModelingModule.h" // For export macro
44
45VTK_ABI_NAMESPACE_BEGIN
46class VTKFILTERSMODELING_EXPORT vtkHausdorffDistancePointSetFilter : public vtkPointSetAlgorithm
47{
48public:
50
55 void PrintSelf(ostream& os, vtkIndent indent) override;
57
59
62 vtkGetVector2Macro(RelativeDistance, double);
64
66
69 vtkGetMacro(HausdorffDistance, double);
71
73 {
75 POINT_TO_CELL
76 };
77
79
87 vtkSetMacro(TargetDistanceMethod, int);
88 vtkGetMacro(TargetDistanceMethod, int);
89 void SetTargetDistanceMethodToPointToPoint() { this->SetTargetDistanceMethod(POINT_TO_POINT); }
90 void SetTargetDistanceMethodToPointToCell() { this->SetTargetDistanceMethod(POINT_TO_CELL); }
91 const char* GetTargetDistanceMethodAsString();
93
94protected:
97
99 int FillInputPortInformation(int port, vtkInformation* info) override;
100
102 double RelativeDistance[2];
104
105private:
107 void operator=(const vtkHausdorffDistancePointSetFilter&) = delete;
108};
110{
112 {
113 return "PointToPoint";
114 }
115 else
116 {
117 return "PointToCell";
118 }
119}
120VTK_ABI_NAMESPACE_END
121#endif
Compute Hausdorff distance between two point sets.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void SetTargetDistanceMethodToPointToCell()
Specify the strategy for computing the distance.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for construction, type and printing.
int TargetDistanceMethod
point-to-point if 0, point-to-cell if 1
static vtkHausdorffDistancePointSetFilter * New()
Standard methods for construction, type and printing.
double HausdorffDistance
hausdorff distance (max(relative distance))
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void SetTargetDistanceMethodToPointToPoint()
Specify the strategy for computing the distance.
const char * GetTargetDistanceMethodAsString()
Specify the strategy for computing the distance.
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 output of the same type as input.