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

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

#include <ecvAnimationParamDlg.h>

Inheritance diagram for ecvAnimationParamDlg:
Collaboration diagram for ecvAnimationParamDlg:

Public Types

enum  AxisType { AXIS_START , AXIS_END }
 

Public Slots

void linkWith (QMdiSubWindow *qWin)
 Links this dialog with a given sub-window. More...
 
void updateRotationAxisPoint (AxisType axisType, const CCVector3d &P)
 Updates dialog values with axis point. More...
 
void startAnimation ()
 Start animation. More...
 
void enableListener (bool state)
 
void updateAxisStartToolState (bool state)
 
void updateAxisEndToolState (bool state)
 
void processPickedItem (ccHObject *, unsigned, int, int, const CCVector3 &)
 

Public Member Functions

 ecvAnimationParamDlg (QWidget *parent, MainWindow *app, ccPickingHub *pickingHub)
 Default constructor. More...
 
 ~ecvAnimationParamDlg () 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...
 
CCVector3d getRotationAxis () const
 
double getRotationAngle () const
 
bool isSavingViewport () const
 
void doCompute ()
 
MainWindowgetMainWindow ()
 
- 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
 

Protected Member Functions

void initWith (QWidget *win)
 Inits dialog values with specified window. More...
 
- Protected Member Functions inherited from ccOverlayDialog
bool eventFilter (QObject *obj, QEvent *e) override
 

Protected Attributes

ccPickingHubm_pickingHub
 Picking hub. More...
 
MainWindowm_app
 
ecvViewportParameters viewportParamsHistory
 
- 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...
 
- Protected Slots inherited from ccOverlayDialog
virtual void onLinkedWindowDeletion (QObject *object=nullptr)
 Slot called when the linked window is deleted (calls 'onClose') More...
 

Detailed Description

Dialog to interactively edit the camera pose parameters.

Definition at line 28 of file ecvAnimationParamDlg.h.

Member Enumeration Documentation

◆ AxisType

Enumerator
AXIS_START 
AXIS_END 

Definition at line 40 of file ecvAnimationParamDlg.h.

Constructor & Destructor Documentation

◆ ecvAnimationParamDlg()

ecvAnimationParamDlg::ecvAnimationParamDlg ( QWidget *  parent,
MainWindow app,
ccPickingHub pickingHub 
)
explicit

Default constructor.

Definition at line 39 of file ecvAnimationParamDlg.cpp.

References startAnimation(), updateAxisEndToolState(), and updateAxisStartToolState().

◆ ~ecvAnimationParamDlg()

ecvAnimationParamDlg::~ecvAnimationParamDlg ( )
override

Destructor.

Definition at line 72 of file ecvAnimationParamDlg.cpp.

Member Function Documentation

◆ doCompute()

void ecvAnimationParamDlg::doCompute ( )

◆ enableListener

◆ getMainWindow()

MainWindow* ecvAnimationParamDlg::getMainWindow ( )
inline

Definition at line 54 of file ecvAnimationParamDlg.h.

References m_app.

Referenced by startAnimation().

◆ getRotationAngle()

double ecvAnimationParamDlg::getRotationAngle ( ) const

Definition at line 74 of file ecvAnimationParamDlg.cpp.

Referenced by startAnimation().

◆ getRotationAxis()

CCVector3d ecvAnimationParamDlg::getRotationAxis ( ) const

Definition at line 248 of file ecvAnimationParamDlg.cpp.

Referenced by startAnimation().

◆ initWith()

void ecvAnimationParamDlg::initWith ( QWidget *  win)
protected

Inits dialog values with specified window.

Definition at line 243 of file ecvAnimationParamDlg.cpp.

Referenced by linkWith().

◆ isSavingViewport()

bool ecvAnimationParamDlg::isSavingViewport ( ) const

Definition at line 78 of file ecvAnimationParamDlg.cpp.

Referenced by startAnimation().

◆ linkWith [1/2]

void ecvAnimationParamDlg::linkWith ( QMdiSubWindow *  qWin)
slot

Links this dialog with a given sub-window.

Definition at line 205 of file ecvAnimationParamDlg.cpp.

References linkWith().

◆ linkWith() [2/2]

bool ecvAnimationParamDlg::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 212 of file ecvAnimationParamDlg.cpp.

References initWith(), ccOverlayDialog::linkWith(), ccOverlayDialog::m_associatedWin, ecvDisplayTools::TheInstance(), updateAxisEndToolState(), and updateAxisStartToolState().

Referenced by linkWith().

◆ onItemPicked()

void ecvAnimationParamDlg::onItemPicked ( const PickedItem pi)
overridevirtual

◆ processPickedItem

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

◆ start()

bool ecvAnimationParamDlg::start ( )
overridevirtual

Starts process.

Returns
success

Reimplemented from ccOverlayDialog.

Definition at line 192 of file ecvAnimationParamDlg.cpp.

References ecvDisplayTools::GetViewportParameters(), ccOverlayDialog::m_processing, ccOverlayDialog::start(), and viewportParamsHistory.

◆ startAnimation

◆ updateAxisEndToolState

void ecvAnimationParamDlg::updateAxisEndToolState ( bool  state)
slot

◆ updateAxisStartToolState

void ecvAnimationParamDlg::updateAxisStartToolState ( bool  state)
slot

◆ updateRotationAxisPoint

void ecvAnimationParamDlg::updateRotationAxisPoint ( AxisType  axisType,
const CCVector3d P 
)
slot

Updates dialog values with axis point.

Definition at line 264 of file ecvAnimationParamDlg.cpp.

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

Referenced by onItemPicked(), and processPickedItem().

Member Data Documentation

◆ m_app

MainWindow* ecvAnimationParamDlg::m_app
protected

Definition at line 86 of file ecvAnimationParamDlg.h.

Referenced by getMainWindow().

◆ m_pickingHub

ccPickingHub* ecvAnimationParamDlg::m_pickingHub
protected

Picking hub.

Definition at line 84 of file ecvAnimationParamDlg.h.

Referenced by enableListener(), and onItemPicked().

◆ viewportParamsHistory

ecvViewportParameters ecvAnimationParamDlg::viewportParamsHistory
protected

Definition at line 87 of file ecvAnimationParamDlg.h.

Referenced by start().


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