VTK  9.3.0
vtkRadiusOutlierRemoval.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 vtkRadiusOutlierRemoval_h
41#define vtkRadiusOutlierRemoval_h
42
43#include "vtkFiltersPointsModule.h" // For export macro
44#include "vtkPointCloudFilter.h"
45
46VTK_ABI_NAMESPACE_BEGIN
48class vtkPointSet;
49
50class VTKFILTERSPOINTS_EXPORT vtkRadiusOutlierRemoval : public vtkPointCloudFilter
51{
52public:
54
60 void PrintSelf(ostream& os, vtkIndent indent) override;
62
64
67 vtkSetClampMacro(Radius, double, 0.0, VTK_FLOAT_MAX);
68 vtkGetMacro(Radius, double);
70
72
76 vtkSetClampMacro(NumberOfNeighbors, int, 1, VTK_INT_MAX);
77 vtkGetMacro(NumberOfNeighbors, int);
79
81
87 vtkGetObjectMacro(Locator, vtkAbstractPointLocator);
89
90protected:
93
94 double Radius;
97
98 // All derived classes must implement this method. Note that a side effect of
99 // the class is to populate the PointMap. Zero is returned if there is a failure.
100 int FilterPoints(vtkPointSet* input) override;
101
102private:
104 void operator=(const vtkRadiusOutlierRemoval&) = delete;
105};
106
107VTK_ABI_NAMESPACE_END
108#endif
abstract class to quickly locate points in 3-space
a simple class to control print indentation
Definition vtkIndent.h:29
abstract class for filtering a point cloud
concrete class for storing a set of points
Definition vtkPointSet.h:59
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instantiating, obtaining type information, and printing information.
static vtkRadiusOutlierRemoval * New()
Standard methods for instantiating, obtaining type information, and printing information.
void SetLocator(vtkAbstractPointLocator *locator)
Specify a point locator.
vtkAbstractPointLocator * Locator
int FilterPoints(vtkPointSet *input) override
~vtkRadiusOutlierRemoval() override
#define VTK_INT_MAX
Definition vtkType.h:144
#define VTK_FLOAT_MAX
Definition vtkType.h:152