QAbstract3DInputHandler Class

The base class for implementations of input handlers. 更多...

頭: #include <QAbstract3DInputHandler>
Since: QtDataVisualization 1.0
實例化: AbstractInputHandler3D
繼承: QObject
繼承者: Q3DInputHandler

公共類型

enum InputView { InputViewNone, InputViewOnPrimary, InputViewOnSecondary }

特性

公共函數

virtual ~QAbstract3DInputHandler ()
QPoint inputPosition () const
QAbstract3DInputHandler::InputView inputView () const
virtual void mouseDoubleClickEvent (QMouseEvent * event )
virtual void mouseMoveEvent (QMouseEvent * event , const QPoint & mousePos )
virtual void mousePressEvent (QMouseEvent * event , const QPoint & mousePos )
virtual void mouseReleaseEvent (QMouseEvent * event , const QPoint & mousePos )
Q3DScene * scene () const
void setInputPosition (const QPoint & position )
void setInputView (QAbstract3DInputHandler::InputView inputView )
void setScene (Q3DScene * scene )
virtual void touchEvent (QTouchEvent * event )
virtual void wheelEvent (QWheelEvent * event )

信號

void inputViewChanged (QAbstract3DInputHandler::InputView view )
void positionChanged (const QPoint & position )
void sceneChanged (Q3DScene * scene )

靜態公共成員

const QMetaObject staticMetaObject

保護函數

QAbstract3DInputHandler (QObject * parent = nullptr)
int prevDistance () const
QPoint previousInputPos () const
void setPrevDistance (int distance )
void setPreviousInputPos (const QPoint & position )

額外繼承成員

詳細描述

The base class for implementations of input handlers.

QAbstract3DInputHandler is the base class that is subclassed by different input handling implementations that take input events and translate those to camera and light movements. Input handlers also translate raw input events to slicing and selection events in the scene.

成員類型文檔編製

enum QAbstract3DInputHandler:: InputView

Predefined input views for mouse and touch based input handlers.

常量 描述
QAbstract3DInputHandler::InputViewNone 0 Mouse or touch not on a view.
QAbstract3DInputHandler::InputViewOnPrimary 1 Mouse or touch input received on the primary view area. If secondary view is displayed when inputView becomes InputViewOnPrimary, secondary view is closed.
QAbstract3DInputHandler::InputViewOnSecondary 2 Mouse or touch input received on the secondary view area.

特性文檔編製

inputPosition : QPoint

This property holds the last input position based on the processed input events.

訪問函數:

QPoint inputPosition () const
void setInputPosition (const QPoint & position )

通知程序信號:

void positionChanged (const QPoint & position )

inputView : InputView

This property holds the current enumerated input view based on the view of the processed input events.

One of the InputView 枚舉值。

When the view changes, the inputViewChanged 信號發射。

訪問函數:

QAbstract3DInputHandler::InputView inputView () const
void setInputView (QAbstract3DInputHandler::InputView inputView )

通知程序信號:

void inputViewChanged (QAbstract3DInputHandler::InputView view )

另請參閱 InputView .

scene : Q3DScene *

This property holds the 3D scene this abstract input handler is controlling.

One input handler can control one scene. Setting a scene to an input handler does not transfer the ownership of the scene.

訪問函數:

Q3DScene * scene () const
void setScene (Q3DScene * scene )

通知程序信號:

void sceneChanged (Q3DScene * scene )

成員函數文檔編製

[protected] QAbstract3DInputHandler:: QAbstract3DInputHandler ( QObject * parent = nullptr)

Constructs the base class. An optional parent 參數可以給齣,然後會被傳遞給 QObject 構造函數。

[虛擬] QAbstract3DInputHandler:: ~QAbstract3DInputHandler ()

Destroys the base class.

[虛擬] void QAbstract3DInputHandler:: mouseDoubleClickEvent ( QMouseEvent * event )

Override this to handle mouse double click events. Mouse double click event is given in the event .

[虛擬] void QAbstract3DInputHandler:: mouseMoveEvent ( QMouseEvent * event , const QPoint & mousePos )

Override this to handle mouse move events. Mouse move event is given in the event and the mouse position in mousePos .

[虛擬] void QAbstract3DInputHandler:: mousePressEvent ( QMouseEvent * event , const QPoint & mousePos )

Override this to handle mouse press events. Mouse press event is given in the event and the mouse position in mousePos .

[虛擬] void QAbstract3DInputHandler:: mouseReleaseEvent ( QMouseEvent * event , const QPoint & mousePos )

Override this to handle mouse release events. Mouse release event is given in the event and the mouse position in mousePos .

[protected] int QAbstract3DInputHandler:: prevDistance () const

Returns the manhattan length between last two input positions.

另請參閱 setPrevDistance ().

[protected] QPoint QAbstract3DInputHandler:: previousInputPos () const

Returns the previous input position.

另請參閱 setPreviousInputPos ().

[protected] void QAbstract3DInputHandler:: setPrevDistance ( int distance )

設置 distance (manhattan length) between last two input positions.

另請參閱 prevDistance ().

[protected] void QAbstract3DInputHandler:: setPreviousInputPos (const QPoint & position )

Sets the previous input position to the point given by position .

另請參閱 previousInputPos ().

[虛擬] void QAbstract3DInputHandler:: touchEvent ( QTouchEvent * event )

Override this to handle touch input events. Touch event is given in the event .

[虛擬] void QAbstract3DInputHandler:: wheelEvent ( QWheelEvent * event )

Override this to handle wheel events. Wheel event is given in the event .