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

Dialog for simple point picking (information, distance, etc.) More...

#include <ecvPointPropertiesDlg.h>

Inheritance diagram for ccPointPropertiesDlg:
Collaboration diagram for ccPointPropertiesDlg:

Signals

void newLabel (ccHObject *)
 Signal emitted when a new label is created. More...
 
- 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...
 

Public Member Functions

 ccPointPropertiesDlg (ccPickingHub *pickingHub, QWidget *parent)
 Default constructor. More...
 
virtual ~ccPointPropertiesDlg ()
 Default destructor. More...
 
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...
 
- Public Member Functions inherited from ccPointPickingGenericInterface
 ccPointPickingGenericInterface (ccPickingHub *pickingHub, QWidget *parent=nullptr)
 Default constructor. More...
 
 ~ccPointPickingGenericInterface () override=default
 Destructor. More...
 
void onItemPicked (const PickedItem &pi) override
 Inherited from ccPickingListener. More...
 
- 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...
 
- Public Member Functions inherited from ccPickingListener
virtual ~ccPickingListener ()=default
 

Protected Types

enum  Mode { POINT_INFO , POINT_POINT_DISTANCE , POINTS_ANGLE , RECT_ZONE }
 Picking mode. More...
 

Protected Slots

void onClose ()
 
void activatePointPropertiesDisplay ()
 
void activateDistanceDisplay ()
 
void activateAngleDisplay ()
 
void activate2DZonePicking ()
 
void initializeState ()
 
void exportCurrentLabel ()
 
void update2DZone (int x, int y, Qt::MouseButtons buttons)
 
void processClickedPoint (int x, int y)
 
void close2DZone ()
 
- 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 processPickedPoint (ccPointCloud *cloud, unsigned pointIndex, int x, int y) override
 Generic method to process picked points. More...
 
- Protected Member Functions inherited from ccOverlayDialog
bool eventFilter (QObject *obj, QEvent *e) override
 

Protected Attributes

Mode m_pickingMode
 Current picking mode. More...
 
cc2DLabelm_label
 Associated 3D label. More...
 
cc2DViewportLabelm_rect2DLabel
 Associated 2D label. More...
 
- Protected Attributes inherited from ccPointPickingGenericInterface
ccPickingHubm_pickingHub
 Picking hub. More...
 
- 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...
 

Detailed Description

Dialog for simple point picking (information, distance, etc.)

Definition at line 20 of file ecvPointPropertiesDlg.h.

Member Enumeration Documentation

◆ Mode

Picking mode.

Enumerator
POINT_INFO 
POINT_POINT_DISTANCE 
POINTS_ANGLE 
RECT_ZONE 

Definition at line 55 of file ecvPointPropertiesDlg.h.

Constructor & Destructor Documentation

◆ ccPointPropertiesDlg()

ccPointPropertiesDlg::ccPointPropertiesDlg ( ccPickingHub pickingHub,
QWidget *  parent 
)
explicit

◆ ~ccPointPropertiesDlg()

ccPointPropertiesDlg::~ccPointPropertiesDlg ( )
virtual

Default destructor.

Definition at line 62 of file ecvPointPropertiesDlg.cpp.

References m_label, and m_rect2DLabel.

Member Function Documentation

◆ activate2DZonePicking

void ccPointPropertiesDlg::activate2DZonePicking ( )
protectedslot

◆ activateAngleDisplay

void ccPointPropertiesDlg::activateAngleDisplay ( )
protectedslot

◆ activateDistanceDisplay

void ccPointPropertiesDlg::activateDistanceDisplay ( )
protectedslot

◆ activatePointPropertiesDisplay

void ccPointPropertiesDlg::activatePointPropertiesDisplay ( )
protectedslot

◆ close2DZone

◆ exportCurrentLabel

◆ initializeState

void ccPointPropertiesDlg::initializeState ( )
protectedslot

◆ linkWith()

◆ newLabel

void ccPointPropertiesDlg::newLabel ( ccHObject )
signal

Signal emitted when a new label is created.

Referenced by exportCurrentLabel().

◆ onClose

void ccPointPropertiesDlg::onClose ( )
protectedslot

Definition at line 117 of file ecvPointPropertiesDlg.cpp.

References stop().

Referenced by ccPointPropertiesDlg().

◆ processClickedPoint

◆ processPickedPoint()

void ccPointPropertiesDlg::processPickedPoint ( ccPointCloud cloud,
unsigned  pointIndex,
int  x,
int  y 
)
overrideprotectedvirtual

◆ start()

bool ccPointPropertiesDlg::start ( )
overridevirtual

Starts process.

Returns
success

Reimplemented from ccPointPickingGenericInterface.

Definition at line 102 of file ecvPointPropertiesDlg.cpp.

References activatePointPropertiesDisplay(), and ccPointPickingGenericInterface::start().

◆ stop()

void ccPointPropertiesDlg::stop ( bool  accepted)
overridevirtual

Stops process/dialog.

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

Parameters
acceptedprocess/dialog result

Reimplemented from ccPointPickingGenericInterface.

Definition at line 107 of file ecvPointPropertiesDlg.cpp.

References ecvDisplayTools::GetCurrentScreen(), initializeState(), ecvDisplayTools::SetInteractionMode(), ccPointPickingGenericInterface::stop(), and ecvDisplayTools::TRANSFORM_CAMERA().

Referenced by onClose().

◆ update2DZone

Member Data Documentation

◆ m_label

◆ m_pickingMode

◆ m_rect2DLabel


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