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

#include <ecvFilterByLabelDlg.h>

Inheritance diagram for ecvFilterByLabelDlg:
Collaboration diagram for ecvFilterByLabelDlg:

Public Types

enum  Mode { EXPORT_SELECTED , EXPORT_UNSELECTED , SPLIT , CANCEL }
 Mode. More...
 

Public Member Functions

 ecvFilterByLabelDlg (QWidget *parent=nullptr)
 Default constructor. More...
 
virtual ~ecvFilterByLabelDlg ()
 
virtual bool start () override
 Starts process. More...
 
virtual void stop (bool state) override
 Stops process/dialog. More...
 
virtual bool linkWith (QWidget *win) override
 Links the overlay dialog with a MDI window. More...
 
Mode mode () const
 Returns the selected mode. More...
 
bool setInputEntity (ccHObject *entity)
 Adds an entity to the 'selected' entities set. More...
 
void clear ()
 
- Public Member Functions inherited from ccOverlayDialog
 ccOverlayDialog (QWidget *parent=nullptr, Qt::WindowFlags flags=Qt::FramelessWindowHint|Qt::Tool)
 Default constructor. More...
 
 ~ccOverlayDialog () override
 Destructor. More...
 
void reject () override
 
void addOverridenShortcut (Qt::Key key)
 
bool started () const
 Returns whether the tool is currently started or not. More...
 

Protected Types

typedef std::pair< ccHObject *, ccPointCloud * > EntityAndVerticesType
 

Protected Slots

void cancel ()
 
void selectAllClasses ()
 
void toggleSelectedVisibility ()
 
void onSplit ()
 
void onExportSelected ()
 
void onExportUnSelected ()
 
- Protected Slots inherited from ccOverlayDialog
virtual void onLinkedWindowDeletion (QObject *object=nullptr)
 Slot called when the linked window is deleted (calls 'onClose') More...
 

Protected Member Functions

void apply ()
 
void clearLayoutWidgets (QLayout *layout)
 
void createCheckboxesWithLabels ()
 
void getSelectedFilterClasses (std::vector< ScalarType > &filteredClasses)
 
- Protected Member Functions inherited from ccOverlayDialog
bool eventFilter (QObject *obj, QEvent *e) override
 

Protected Attributes

Mode m_mode
 
EntityAndVerticesType m_toFilter
 
double m_minVald
 
double m_maxVald
 
std::vector< size_t > m_labels
 
- Protected Attributes inherited from ccOverlayDialog
QWidget * m_associatedWin
 Associated (MDI) window. More...
 
bool m_processing
 Running/processing state. More...
 
QList< int > m_overriddenKeys
 Overridden keys. More...
 

Additional Inherited Members

- Signals inherited from ccOverlayDialog
void processFinished (bool accepted)
 Signal emitted when process is finished. More...
 
void shortcutTriggered (int key)
 Signal emitted when an overridden key shortcut is pressed. More...
 
void shown ()
 Signal emitted when a 'show' event is detected. More...
 

Detailed Description

Dialog to sepcify a range of SF values and how the corresponding points should be extracted

Definition at line 22 of file ecvFilterByLabelDlg.h.

Member Typedef Documentation

◆ EntityAndVerticesType

Definition at line 75 of file ecvFilterByLabelDlg.h.

Member Enumeration Documentation

◆ Mode

Mode.

Enumerator
EXPORT_SELECTED 
EXPORT_UNSELECTED 
SPLIT 
CANCEL 

Definition at line 37 of file ecvFilterByLabelDlg.h.

Constructor & Destructor Documentation

◆ ecvFilterByLabelDlg()

ecvFilterByLabelDlg::ecvFilterByLabelDlg ( QWidget *  parent = nullptr)

◆ ~ecvFilterByLabelDlg()

ecvFilterByLabelDlg::~ecvFilterByLabelDlg ( )
virtual

Definition at line 57 of file ecvFilterByLabelDlg.cpp.

Member Function Documentation

◆ apply()

◆ cancel

void ecvFilterByLabelDlg::cancel ( )
protectedslot

Definition at line 182 of file ecvFilterByLabelDlg.cpp.

References clear(), and stop().

Referenced by ecvFilterByLabelDlg().

◆ clear()

void ecvFilterByLabelDlg::clear ( void  )

Definition at line 187 of file ecvFilterByLabelDlg.cpp.

References m_labels.

Referenced by apply(), cancel(), and start().

◆ clearLayoutWidgets()

void ecvFilterByLabelDlg::clearLayoutWidgets ( QLayout *  layout)
protected

Definition at line 323 of file ecvFilterByLabelDlg.cpp.

Referenced by createCheckboxesWithLabels().

◆ createCheckboxesWithLabels()

void ecvFilterByLabelDlg::createCheckboxesWithLabels ( )
protected

◆ getSelectedFilterClasses()

void ecvFilterByLabelDlg::getSelectedFilterClasses ( std::vector< ScalarType > &  filteredClasses)
protected

Definition at line 153 of file ecvFilterByLabelDlg.cpp.

References ClassMap::FindindexByValue(), and CVTools::FromQString().

Referenced by apply().

◆ linkWith()

bool ecvFilterByLabelDlg::linkWith ( QWidget *  win)
overridevirtual

Links the overlay dialog with a MDI window.

Warning: link can't be modified while dialog is displayed/process is running!

Returns
success

Reimplemented from ccOverlayDialog.

Definition at line 145 of file ecvFilterByLabelDlg.cpp.

References ccOverlayDialog::linkWith().

◆ mode()

Mode ecvFilterByLabelDlg::mode ( ) const
inline

Returns the selected mode.

Definition at line 40 of file ecvFilterByLabelDlg.h.

References m_mode.

◆ onExportSelected

void ecvFilterByLabelDlg::onExportSelected ( )
inlineprotectedslot

Definition at line 64 of file ecvFilterByLabelDlg.h.

References apply(), EXPORT_SELECTED, and m_mode.

Referenced by ecvFilterByLabelDlg().

◆ onExportUnSelected

void ecvFilterByLabelDlg::onExportUnSelected ( )
inlineprotectedslot

Definition at line 68 of file ecvFilterByLabelDlg.h.

References apply(), EXPORT_UNSELECTED, and m_mode.

Referenced by ecvFilterByLabelDlg().

◆ onSplit

void ecvFilterByLabelDlg::onSplit ( )
inlineprotectedslot

Definition at line 60 of file ecvFilterByLabelDlg.h.

References apply(), m_mode, and SPLIT.

Referenced by ecvFilterByLabelDlg().

◆ selectAllClasses

void ecvFilterByLabelDlg::selectAllClasses ( )
protectedslot

Definition at line 169 of file ecvFilterByLabelDlg.cpp.

Referenced by ecvFilterByLabelDlg().

◆ setInputEntity()

bool ecvFilterByLabelDlg::setInputEntity ( ccHObject entity)

Adds an entity to the 'selected' entities set.

Only the 'selected' entities are moved.

Returns
success, if the entity is eligible for graphical transformation

Definition at line 189 of file ecvFilterByLabelDlg.cpp.

References ccScalarField::displayRange(), ccPointCloud::getCurrentDisplayedScalarField(), ccObject::getName(), ccObject::isKindOf(), m_maxVald, m_minVald, m_toFilter, CV_TYPES::POINT_CLOUD, cloudViewer::PointCloudTpl< T >::size(), ccScalarField::Range::start(), ccScalarField::Range::stop(), ccHObjectCaster::ToGenericPointCloud(), and CVLog::Warning().

◆ start()

◆ stop()

void ecvFilterByLabelDlg::stop ( bool  accepted)
overridevirtual

Stops process/dialog.

Automatically emits the 'processFinished' signal (with input state as argument).

Parameters
acceptedprocess/dialog result

Reimplemented from ccOverlayDialog.

Definition at line 143 of file ecvFilterByLabelDlg.cpp.

References ccOverlayDialog::stop().

Referenced by apply(), and cancel().

◆ toggleSelectedVisibility

void ecvFilterByLabelDlg::toggleSelectedVisibility ( )
protectedslot

Definition at line 180 of file ecvFilterByLabelDlg.cpp.

Referenced by ecvFilterByLabelDlg().

Member Data Documentation

◆ m_labels

std::vector<size_t> ecvFilterByLabelDlg::m_labels
protected

Definition at line 81 of file ecvFilterByLabelDlg.h.

Referenced by clear(), createCheckboxesWithLabels(), and start().

◆ m_maxVald

double ecvFilterByLabelDlg::m_maxVald
protected

Definition at line 79 of file ecvFilterByLabelDlg.h.

Referenced by createCheckboxesWithLabels(), and setInputEntity().

◆ m_minVald

double ecvFilterByLabelDlg::m_minVald
protected

Definition at line 78 of file ecvFilterByLabelDlg.h.

Referenced by createCheckboxesWithLabels(), and setInputEntity().

◆ m_mode

Mode ecvFilterByLabelDlg::m_mode
protected

Definition at line 74 of file ecvFilterByLabelDlg.h.

Referenced by apply(), mode(), onExportSelected(), onExportUnSelected(), and onSplit().

◆ m_toFilter

EntityAndVerticesType ecvFilterByLabelDlg::m_toFilter
protected

Definition at line 76 of file ecvFilterByLabelDlg.h.

Referenced by apply(), createCheckboxesWithLabels(), setInputEntity(), and start().


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