VTK
vtkRadiusOutlierRemoval.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkRadiusOutlierRemoval.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See LICENSE file 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 =========================================================================*/
49 #ifndef vtkRadiusOutlierRemoval_h
50 #define vtkRadiusOutlierRemoval_h
51 
52 #include "vtkFiltersPointsModule.h" // For export macro
53 #include "vtkPointCloudFilter.h"
54 
56 class vtkPointSet;
57 
58 
59 class VTKFILTERSPOINTS_EXPORT vtkRadiusOutlierRemoval : public vtkPointCloudFilter
60 {
61 public:
63 
67  static vtkRadiusOutlierRemoval *New();
69  void PrintSelf(ostream& os, vtkIndent indent) override;
71 
73 
76  vtkSetClampMacro(Radius,double,0.0,VTK_FLOAT_MAX);
77  vtkGetMacro(Radius,double);
79 
81 
85  vtkSetClampMacro(NumberOfNeighbors,int,1,VTK_INT_MAX);
86  vtkGetMacro(NumberOfNeighbors,int);
88 
90 
95  void SetLocator(vtkAbstractPointLocator *locator);
96  vtkGetObjectMacro(Locator,vtkAbstractPointLocator);
98 
99 protected:
101  ~vtkRadiusOutlierRemoval() override;
102 
103  double Radius;
106 
107  // All derived classes must implement this method. Note that a side effect of
108  // the class is to populate the PointMap. Zero is returned if there is a failure.
109  int FilterPoints(vtkPointSet *input) override;
110 
111 private:
113  void operator=(const vtkRadiusOutlierRemoval&) = delete;
114 
115 };
116 
117 #endif
vtkRadiusOutlierRemoval::NumberOfNeighbors
int NumberOfNeighbors
Definition: vtkRadiusOutlierRemoval.h:104
vtkPointCloudFilter.h
VTK_INT_MAX
#define VTK_INT_MAX
Definition: vtkType.h:159
vtkRadiusOutlierRemoval::Locator
vtkAbstractPointLocator * Locator
Definition: vtkRadiusOutlierRemoval.h:105
vtkPointCloudFilter
abstract class for filtering a point cloud
Definition: vtkPointCloudFilter.h:66
vtkRadiusOutlierRemoval
remove isolated points
Definition: vtkRadiusOutlierRemoval.h:59
vtkRadiusOutlierRemoval::Radius
double Radius
Definition: vtkRadiusOutlierRemoval.h:103
vtkPointCloudFilter::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
VTK_FLOAT_MAX
#define VTK_FLOAT_MAX
Definition: vtkType.h:167
vtkPointCloudFilter::FilterPoints
virtual int FilterPoints(vtkPointSet *input)=0
vtkPointSet
abstract class for specifying dataset behavior
Definition: vtkPointSet.h:39
vtkAbstractPointLocator
abstract class to quickly locate points in 3-space
Definition: vtkAbstractPointLocator.h:38
vtkPolyDataAlgorithm::New
static vtkPolyDataAlgorithm * New()