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

Dialog to interactively edit the camera pose parameters. More...

#include <ecvCameraParamEditDlg.h>

Inheritance diagram for ecvCameraParamEditDlg:
Collaboration diagram for ecvCameraParamEditDlg:

Public Slots

void linkWith (QMdiSubWindow *qWin)
 Links this dialog with a given sub-window. More...
 
void updatePivotPoint (const CCVector3d &P)
 Updates dialog values with pivot point. More...
 
void updateViewMode ()
 Updates current view mode. More...
 
void pivotChanged ()
 
void rotationFactorChanged (double)
 
void zfactorSliderMoved (int val)
 
void pickPointAsPivot (bool)
 
void processPickedItem (ccHObject *, unsigned, int, int, const CCVector3 &)
 

Public Member Functions

 ecvCameraParamEditDlg (QWidget *parent, ccPickingHub *pickingHub)
 Default constructor. More...
 
 ~ecvCameraParamEditDlg () override
 Destructor. More...
 
bool start () override
 Starts process. More...
 
bool linkWith (QWidget *win) override
 Links the overlay dialog with a MDI window. More...
 
void onItemPicked (const PickedItem &pi) override
 Method called whenever an item is picked. More...
 
bool setCameraTool (ecvGenericCameraTool *tool)
 
void SetCameraGroupsEnabled (bool enabled)
 
- Public Member Functions inherited from ccOverlayDialog
 ccOverlayDialog (QWidget *parent=nullptr, Qt::WindowFlags flags=Qt::FramelessWindowHint|Qt::Tool)
 Default constructor. More...
 
 ~ccOverlayDialog () override
 Destructor. More...
 
virtual void stop (bool accepted)
 Stops process/dialog. 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
 

Static Public Member Functions

static bool ConfigureCustomViewpoints (QWidget *parentWidget)
 
static bool AddCurrentViewpointToCustomViewpoints ()
 
static bool ApplyCustomViewpoint (int CustomViewpointIndex)
 
static bool DeleteCustomViewpoint (int CustomViewpointIndex)
 
static bool SetToCurrentViewpoint (int CustomViewpointIndex)
 
static QStringList CustomViewpointToolTips ()
 
static QStringList CustomViewpointConfigurations ()
 

Protected Types

using PushedMatricesMapType = std::map< QWidget *, ccGLMatrixd >
 Type of the pushed matrices map structure. More...
 
using PushedMatricesMapElement = std::pair< QWidget *, ccGLMatrixd >
 Type of an element of the pushed matrices map structure. More...
 

Protected Slots

void updateCamera ()
 
void cameraChanged ()
 
- 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 initWith (QWidget *win)
 Inits dialog values with specified window. More...
 
void updateUi ()
 
- Protected Member Functions inherited from ccOverlayDialog
bool eventFilter (QObject *obj, QEvent *e) override
 

Protected Attributes

PushedMatricesMapType pushedMatrices
 Pushed camera matrices (per window) More...
 
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...
 

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 interactively edit the camera pose parameters.

Definition at line 29 of file ecvCameraParamEditDlg.h.

Member Typedef Documentation

◆ PushedMatricesMapElement

using ecvCameraParamEditDlg::PushedMatricesMapElement = std::pair<QWidget*, ccGLMatrixd>
protected

Type of an element of the pushed matrices map structure.

Definition at line 151 of file ecvCameraParamEditDlg.h.

◆ PushedMatricesMapType

using ecvCameraParamEditDlg::PushedMatricesMapType = std::map<QWidget*, ccGLMatrixd>
protected

Type of the pushed matrices map structure.

Definition at line 149 of file ecvCameraParamEditDlg.h.

Constructor & Destructor Documentation

◆ ecvCameraParamEditDlg()

◆ ~ecvCameraParamEditDlg()

ecvCameraParamEditDlg::~ecvCameraParamEditDlg ( )
override

Destructor.

Definition at line 198 of file ecvCameraParamEditDlg.cpp.

Member Function Documentation

◆ AddCurrentViewpointToCustomViewpoints()

◆ ApplyCustomViewpoint()

bool ecvCameraParamEditDlg::ApplyCustomViewpoint ( int  CustomViewpointIndex)
static

◆ cameraChanged

void ecvCameraParamEditDlg::cameraChanged ( )
protectedslot

◆ ConfigureCustomViewpoints()

◆ CustomViewpointConfigurations()

◆ CustomViewpointToolTips()

◆ DeleteCustomViewpoint()

◆ initWith()

void ecvCameraParamEditDlg::initWith ( QWidget *  win)
protected

Inits dialog values with specified window.

Definition at line 294 of file ecvCameraParamEditDlg.cpp.

References ecvGenericCameraTool::updateCameraParameters(), updateUi(), and updateViewMode().

Referenced by linkWith().

◆ linkWith [1/2]

void ecvCameraParamEditDlg::linkWith ( QMdiSubWindow *  qWin)
slot

Links this dialog with a given sub-window.

Definition at line 254 of file ecvCameraParamEditDlg.cpp.

References linkWith().

◆ linkWith() [2/2]

bool ecvCameraParamEditDlg::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 262 of file ecvCameraParamEditDlg.cpp.

References initWith(), ccOverlayDialog::linkWith(), ccOverlayDialog::m_associatedWin, ecvDisplayTools::perspectiveStateChanged(), pickPointAsPivot(), ecvDisplayTools::pivotPointChanged(), ecvDisplayTools::TheInstance(), updatePivotPoint(), and updateViewMode().

Referenced by linkWith().

◆ onItemPicked()

void ecvCameraParamEditDlg::onItemPicked ( const PickedItem pi)
overridevirtual

◆ pickPointAsPivot

◆ pivotChanged

void ecvCameraParamEditDlg::pivotChanged ( )
slot

◆ processPickedItem

void ecvCameraParamEditDlg::processPickedItem ( ccHObject entity,
unsigned  ,
int  ,
int  ,
const CCVector3 P 
)
slot

◆ rotationFactorChanged

void ecvCameraParamEditDlg::rotationFactorChanged ( double  val)
slot

◆ SetCameraGroupsEnabled()

void ecvCameraParamEditDlg::SetCameraGroupsEnabled ( bool  enabled)

Definition at line 484 of file ecvCameraParamEditDlg.cpp.

◆ setCameraTool()

bool ecvCameraParamEditDlg::setCameraTool ( ecvGenericCameraTool tool)

Definition at line 206 of file ecvCameraParamEditDlg.cpp.

◆ SetToCurrentViewpoint()

bool ecvCameraParamEditDlg::SetToCurrentViewpoint ( int  CustomViewpointIndex)
static

◆ start()

bool ecvCameraParamEditDlg::start ( void  )
overridevirtual

Starts process.

Returns
success

Reimplemented from ccOverlayDialog.

Definition at line 244 of file ecvCameraParamEditDlg.cpp.

References ccOverlayDialog::m_processing, and ccOverlayDialog::start().

◆ updateCamera

◆ updatePivotPoint

void ecvCameraParamEditDlg::updatePivotPoint ( const CCVector3d P)
slot

Updates dialog values with pivot point.

Definition at line 313 of file ecvCameraParamEditDlg.cpp.

References Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.

Referenced by linkWith().

◆ updateUi()

◆ updateViewMode

void ecvCameraParamEditDlg::updateViewMode ( )
slot

Updates current view mode.

Definition at line 325 of file ecvCameraParamEditDlg.cpp.

References ecvGenericDisplayTools::GetPerspectiveState(), and ccOverlayDialog::m_associatedWin.

Referenced by initWith(), and linkWith().

◆ zfactorSliderMoved

void ecvCameraParamEditDlg::zfactorSliderMoved ( int  val)
slot

Definition at line 479 of file ecvCameraParamEditDlg.cpp.

Referenced by ecvCameraParamEditDlg().

Member Data Documentation

◆ m_pickingHub

ccPickingHub* ecvCameraParamEditDlg::m_pickingHub
protected

Picking hub.

Definition at line 157 of file ecvCameraParamEditDlg.h.

Referenced by onItemPicked(), and pickPointAsPivot().

◆ pushedMatrices

PushedMatricesMapType ecvCameraParamEditDlg::pushedMatrices
protected

Pushed camera matrices (per window)

Definition at line 154 of file ecvCameraParamEditDlg.h.


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