ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ProjectionFilter Class Reference

Projection Filter. More...

#include <ProjectionFilter.h>

Inheritance diagram for ProjectionFilter:
Collaboration diagram for ProjectionFilter:

Public Member Functions

 ProjectionFilter ()
 
virtual ~ProjectionFilter ()
 
virtual int compute ()
 Performs the actual filter job. More...
 
- Public Member Functions inherited from BasePclModule
 BasePclModule (PclModuleDescription desc=PclModuleDescription(), ccPluginInterface *parent_plugin=0)
 Default constructor. More...
 
QAction * getAction ()
 Get the action associated with the button used in menu and toolbar creation. More...
 
QString getStatusTip () const
 Returns the status tip. More...
 
QString getModuleName () const
 Returns the name of the filter. More...
 
QString getEntryName () const
 Returns the entry name. More...
 
QIcon getIcon () const
 Returns the icon associated with the button. More...
 
void setShowProgressBar (bool status)
 Sets whether to show a progressbar while computing or not. More...
 
std::vector< std::string > getSelectedAvailableScalarFields ()
 
ccPointCloudgetSelectedEntityAsCCPointCloud () const
 Returns the first selected entity as a ccPointCloud. More...
 
ccHObjectgetSelectedEntityAsCCHObject () const
 Returns the first selected entity as a ccHObject. More...
 
ccHObject::Container getSelectedThatHaveMetaData (const QString key) const
 Get selected object that also have the provided metadata key. More...
 
void getAllEntitiesOfType (CV_CLASS_ENUM type, ccHObject::Container &entities)
 Returns all the objects in db tree of type "type". More...
 
void getAllEntitiesThatHaveMetaData (QString key, ccHObject::Container &entities)
 
void getSelectedEntitiesThatAreCCPointCloud (ccHObject::Container &entities)
 get all entities that are selected and that also are cc_point_cloud More...
 
void getSelectedEntitiesThatAre (CV_CLASS_ENUM kind, ccHObject::Container &entities)
 
int hasSelectedRGB ()
 Returns 1 if the first selected entity has RGB info. More...
 
int hasSelectedScalarField ()
 Returns 1 if the first selected entity has at least one scalar field. More...
 
int hasSelectedScalarField (std::string field_name)
 
int isFirstSelectedCcPointCloud ()
 Returns 1 if the first selected object is a ccPointCloud. More...
 
virtual void updateSelectedEntities (const ccHObject::Container &selectedEntities)
 Updates the internal copy of selected entities. More...
 
void setMainAppInterface (ecvMainAppInterface *app)
 Sets associated CC application interface (to access DB) More...
 
ecvMainAppInterfacegetMainAppInterface ()
 
ccPluginInterfacegetParentPlugin () const
 Returns the associated parent plugin interface. More...
 

Protected Member Functions

virtual int openInputDialog ()
 
virtual int checkParameters ()
 
virtual void getParametersFromDialog ()
 Collects parameters from the filter dialog (if openDialog is successful) More...
 
virtual QString getErrorMessage (int errorCode)
 Returns the error message corresponding to a given error code. More...
 
- Protected Member Functions inherited from BasePclModule
virtual int checkSelected ()
 Checks if current selection is compliant with the filter. More...
 
virtual int openOutputDialog ()
 
virtual int start ()
 Starts computation. More...
 
virtual void initAction ()
 Initializes the corresponding action. More...
 
void throwError (int errCode)
 

Protected Attributes

ProjectionFilterDlgm_dialog
 
bool m_projectionMode
 
float m_coefficientA
 
float m_coefficientB
 
float m_coefficientC
 
float m_coefficientD
 
bool m_useVoxelGrid
 
float m_leafSize
 
bool m_useKnn
 
int m_knn_radius
 
float m_normalSearchRadius
 
float m_boundarySearchRadius
 
float m_boundaryAngleThreshold
 
- Protected Attributes inherited from BasePclModule
QAction * m_action
 Forces the Ui to be updated. More...
 
ccHObject::Container m_selected
 Pointer to the main window. More...
 
PclModuleDescription m_desc
 Associated dialog. More...
 
ecvMainAppInterfacem_app
 Associated application interface. More...
 
ccPluginInterfacem_parent_plugin
 associated parent plugin of the filter More...
 
bool m_show_progress
 Do we want to show a progress bar when the filter works? More...
 

Additional Inherited Members

- Signals inherited from BasePclModule
void entityHasChanged (ccHObject *)
 Signal emitted when an entity is (visually) modified. More...
 
void newEntity (ccHObject *)
 Signal emitted when a new entity is created by the filter. More...
 
void newErrorMessage (QString)
 Signal emitted when a new error message is produced. More...
 
- Protected Slots inherited from BasePclModule
int performAction ()
 Returns is called when the dialog window is accepted. More...
 

Detailed Description

Projection Filter.

Definition at line 15 of file ProjectionFilter.h.

Constructor & Destructor Documentation

◆ ProjectionFilter()

ProjectionFilter::ProjectionFilter ( )

Definition at line 26 of file ProjectionFilter.cpp.

◆ ~ProjectionFilter()

ProjectionFilter::~ProjectionFilter ( )
virtual

Definition at line 46 of file ProjectionFilter.cpp.

References m_dialog.

Member Function Documentation

◆ checkParameters()

int ProjectionFilter::checkParameters ( )
protectedvirtual

Checks that the parameters retrieved by getParametersFromDialog are valid Automatically called by performAction. Does nothing by default. Must be overridden if necessary.

Returns
1 if parameters are valid (error code otherwise)

Reimplemented from BasePclModule.

Definition at line 91 of file ProjectionFilter.cpp.

◆ compute()

◆ getErrorMessage()

QString ProjectionFilter::getErrorMessage ( int  errorCode)
protectedvirtual

Returns the error message corresponding to a given error code.

Each filter have a set of possible error message to be used given bt getFilterErrorMessage() Baseclass implementation provides some generic messages.

Note
These messages can be replaced by re-implementing this method and handling the same codes BEFORE calling the baseclass method

Reimplemented from BasePclModule.

Definition at line 193 of file ProjectionFilter.cpp.

References BasePclModule::getErrorMessage().

◆ getParametersFromDialog()

void ProjectionFilter::getParametersFromDialog ( )
protectedvirtual

Collects parameters from the filter dialog (if openDialog is successful)

Automatically called by performAction. Does nothing by default. Must be overridden if necessary.

Reimplemented from BasePclModule.

Definition at line 60 of file ProjectionFilter.cpp.

References m_boundaryAngleThreshold, m_coefficientA, m_coefficientB, m_coefficientC, m_coefficientD, m_dialog, m_knn_radius, m_leafSize, m_normalSearchRadius, m_projectionMode, m_useKnn, and m_useVoxelGrid.

◆ openInputDialog()

int ProjectionFilter::openInputDialog ( )
protectedvirtual

Opens the input dialog window. Where the user can supply parameters for the computation Automatically called by performAction. Does nothing by default. Must be overridden if a dialog must be displayed.

Returns
1 if dialog has been successfully executed, 0 if canceled, negative error code otherwise

Reimplemented from BasePclModule.

Definition at line 51 of file ProjectionFilter.cpp.

References ecvMainAppInterface::getActiveWindow(), BasePclModule::m_app, and m_dialog.

Member Data Documentation

◆ m_boundaryAngleThreshold

float ProjectionFilter::m_boundaryAngleThreshold
protected

Definition at line 47 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_boundarySearchRadius

float ProjectionFilter::m_boundarySearchRadius
protected

Definition at line 46 of file ProjectionFilter.h.

Referenced by compute().

◆ m_coefficientA

float ProjectionFilter::m_coefficientA
protected

Definition at line 35 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_coefficientB

float ProjectionFilter::m_coefficientB
protected

Definition at line 36 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_coefficientC

float ProjectionFilter::m_coefficientC
protected

Definition at line 37 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_coefficientD

float ProjectionFilter::m_coefficientD
protected

Definition at line 38 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_dialog

ProjectionFilterDlg* ProjectionFilter::m_dialog
protected

Definition at line 30 of file ProjectionFilter.h.

Referenced by getParametersFromDialog(), openInputDialog(), and ~ProjectionFilter().

◆ m_knn_radius

int ProjectionFilter::m_knn_radius
protected

Definition at line 44 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_leafSize

float ProjectionFilter::m_leafSize
protected

Definition at line 42 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_normalSearchRadius

float ProjectionFilter::m_normalSearchRadius
protected

Definition at line 45 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_projectionMode

bool ProjectionFilter::m_projectionMode
protected

Definition at line 32 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_useKnn

bool ProjectionFilter::m_useKnn
protected

Definition at line 43 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().

◆ m_useVoxelGrid

bool ProjectionFilter::m_useVoxelGrid
protected

Definition at line 41 of file ProjectionFilter.h.

Referenced by compute(), and getParametersFromDialog().


The documentation for this class was generated from the following files: