ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
GeneralFilters.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - CloudViewer: www.cloudViewer.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2024 www.cloudViewer.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #pragma once
9 
10 #include <CVGeom.h>
11 
12 #include "BasePclModule.h"
13 
14 class ccBBox;
15 class ccPolyline;
16 class GeneralFiltersDlg;
17 
19 class GeneralFilters : public BasePclModule {
20 public:
22  virtual ~GeneralFilters();
23 
24  // inherited from BasePclModule
25  virtual int compute();
26 
27 protected:
28  // inherited from BasePclModule
29  virtual int openInputDialog();
30  virtual int checkParameters();
31  virtual void getParametersFromDialog();
32  virtual QString getErrorMessage(int errorCode);
33 
35 
37 
39 
40  enum FilterType {
46  };
47 
49 
50  // Condition Removal Parameters
52  QStringList m_comparisonTypes;
55 
56  // Progressive Morphological Parameters
59  float m_slope;
62 
63  // Voxel Grid Filter Parameters
64  // bool m_sampleAllData;
65  float m_leafSize;
66 
67  // Crop Hull Parameters
69  std::vector<CCVector3> m_boundary;
71 };
Base abstract class for each implemented PCL filter.
Definition: BasePclModule.h:53
Projection Filter.
QStringList m_comparisonTypes
bool m_extractRemainings
float m_initialDistance
FilterType m_filterType
virtual int openInputDialog()
virtual QString getErrorMessage(int errorCode)
Returns the error message corresponding to a given error code.
std::vector< CCVector3 > m_boundary
virtual int checkParameters()
QString m_comparisonField
ccPolyline * m_polyline
virtual void getParametersFromDialog()
Collects parameters from the filter dialog (if openDialog is successful)
virtual int compute()
Performs the actual filter job.
GeneralFiltersDlg * m_dialog
virtual ~GeneralFilters()
Bounding box structure.
Definition: ecvBBox.h:25
Colored polyline.
Definition: ecvPolyline.h:24