VTK  9.4.20241108
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
49#ifndef vtkHausdorffDistancePointSetFilter_h
50#define vtkHausdorffDistancePointSetFilter_h
51
52#include "vtkFiltersModelingModule.h" // For export macro
54
55VTK_ABI_NAMESPACE_BEGIN
56class VTKFILTERSMODELING_EXPORT vtkHausdorffDistancePointSetFilter : public vtkPointSetAlgorithm
57{
58public:
60
65 void PrintSelf(ostream& os, vtkIndent indent) override;
67
69
72 vtkGetVector2Macro(RelativeDistance, double);
74
76
79 vtkGetMacro(HausdorffDistance, double);
81
83 {
85 POINT_TO_CELL
86 };
87
89
97 vtkSetMacro(TargetDistanceMethod, int);
98 vtkGetMacro(TargetDistanceMethod, int);
99 void SetTargetDistanceMethodToPointToPoint() { this->SetTargetDistanceMethod(POINT_TO_POINT); }
100 void SetTargetDistanceMethodToPointToCell() { this->SetTargetDistanceMethod(POINT_TO_CELL); }
101 const char* GetTargetDistanceMethodAsString();
103
104protected:
107
109 int FillInputPortInformation(int port, vtkInformation* info) override;
110
112 double RelativeDistance[2];
114
115private:
117 void operator=(const vtkHausdorffDistancePointSetFilter&) = delete;
118};
120{
122 {
123 return "PointToPoint";
124 }
125 else
126 {
127 return "PointToCell";
128 }
129}
130VTK_ABI_NAMESPACE_END
131#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:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce output of the same type as input.