QAbstract3DInputHandler 类
实现 3D 输入处理器的基类。 更多信息...
头文件 | #include <QAbstract3DInputHandler> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
qmake | QT += graphs |
由以下类实例化 | AbstractInputHandler3D |
继承 | QObject |
继承自 | |
状态 | 技术预览 |
- 包括继承成员在内的所有成员列表
- QAbstract3DInputHandler 是 Qt Graphs C++ 类的一部分,用于 3D,请参阅 Qt 图表 3D C++ 类。
公共类型
枚举类 | InputView { None, OnPrimary, OnSecondary } |
属性
- inputPosition : QPoint
- inputView : QAbstract3DInputHandler::InputView
- scene : Q3DScene*
公共函数
虚拟 | ~QAbstract3DInputHandler() |
QPoint | inputPosition() const |
QAbstract3DInputHandler::InputView | inputView() const |
虚拟 void | mouseDoubleClickEvent(QMouseEvent *event) |
虚拟 void | mouseMoveEvent(QMouseEvent *event, const QPoint &mousePos) |
虚拟 void | mousePressEvent(QMouseEvent *event, const QPoint &mousePos) |
虚拟 void | mouseReleaseEvent(QMouseEvent *event, const QPoint &mousePos) |
Q3DScene * | scene() const |
void | setInputPosition(const QPoint &position, bool forceSelection = false) |
void | setInputView(QAbstract3DInputHandler::InputView inputView) |
void | setScene(Q3DScene *scene) |
虚拟 void | touchEvent(QTouchEvent *event) |
虚拟 void | wheelEvent(QWheelEvent *event) |
公共槽
void | handleSelection(const QPoint &position) |
信号
void | inputViewChanged(QAbstract3DInputHandler::InputView view) |
void | positionChanged(const QPoint &position) |
void | sceneChanged(Q3DScene *scene) |
受保护的函数
QAbstract3DInputHandler(QObject *parent = nullptr) | |
int | prevDistance() const |
QPoint | previousInputPos() const |
void | setPrevDistance(int distance) |
void | setPreviousInputPos(const QPoint &position) |
详细描述
QAbstract3DInputHandler 是一个基类,由不同类型的输入处理实现所继承,这些实现能够接收输入事件并将它们转换为摄像头和光的位置。输入处理器还将原始输入事件转换为场景中的切分和选择事件。
成员类型文档
enum class QAbstract3DInputHandler::InputView
基于鼠标和触摸输入处理器的预定义输入视图。
常量 | 值 | 描述 |
---|---|---|
QAbstract3DInputHandler::InputView::None | 0 | 鼠标或触摸未在视图上。 |
QAbstract3DInputHandler::InputView::OnPrimary | 1 | 在主要视图区域接收到的鼠标或触摸输入。如果在 inputView 变为 OnPrimary 时显示次要视图,则次要视图将被关闭。 |
QAbstract3DInputHandler::InputView::OnSecondary | 2 | 在次要视图区域接收到的鼠标或触摸输入。 |
属性文档
inputPosition : QPoint
此属性包含基于处理后的输入事件的最后输入位置。
访问函数
QPoint | inputPosition() const |
void | setInputPosition(const QPoint &position, bool forceSelection = false) |
通知信号
void | positionChanged(const QPoint &position) |
inputView : QAbstract3DInputHandler::InputView
此属性包含基于处理后的输入事件的当前枚举输入视图。
其中一个 InputView 枚举值。
当视图改变时,将发出 inputViewChanged
信号。
访问函数
QAbstract3DInputHandler::InputView | inputView() const |
void | setInputView(QAbstract3DInputHandler::InputView inputView) |
通知信号
void | inputViewChanged(QAbstract3DInputHandler::InputView view) |
另请参阅 InputView.
scene : Q3DScene*
此属性包含由这个抽象输入处理器控制的 3D 场景。
一个输入处理器可以控制一个场景。将场景设置为输入处理器不会转移场景的所有权。
访问函数
Q3DScene * | scene() const |
void | setScene(Q3DScene *scene) |
通知信号
void | sceneChanged(Q3DScene *scene) |
成员函数文档
[显式受保护]
QAbstract3DInputHandler::QAbstract3DInputHandler(QObject *parent = nullptr)
构建基类。可以提供一个可选的 parent 参数,并将其传递给 QObject 构造函数。
[虚拟 noexcept]
QAbstract3DInputHandler::~QAbstract3DInputHandler()
销毁基类。
[槽函数]
void QAbstract3DInputHandler::handleSelection(const QPoint &position)
将传入的选举查询 position 转换为选举。
另请参阅Q3DScene::selectionQueryPosition.
[虚函数]
void QAbstract3DInputHandler::mouseDoubleClickEvent(QMouseEvent *event)
重写此函数以处理鼠标双击事件。鼠标双击事件在 event 中给出。
[虚函数]
void QAbstract3DInputHandler::mouseMoveEvent(QMouseEvent *event, const QPoint &mousePos)
重写此函数以处理鼠标移动事件。鼠标移动事件在 event 中给出,鼠标位置在 mousePos 中。
[虚函数]
void QAbstract3DInputHandler::mousePressEvent(QMouseEvent *event, const QPoint &mousePos)
重写此函数以处理鼠标按下事件。鼠标按下事件在 event 中给出,鼠标位置在 mousePos 中。
[虚函数]
void QAbstract3DInputHandler::mouseReleaseEvent(QMouseEvent *event, const QPoint &mousePos)
重写此函数以处理鼠标释放事件。鼠标释放事件在 event 中给出,鼠标位置在 mousePos 中。
[保护成员]
int QAbstract3DInputHandler::prevDistance() const
返回最后两个输入位置之间的曼哈顿距离。
另请参阅setPrevDistance().
[保护成员]
QPoint QAbstract3DInputHandler::previousInputPos() const
返回上一个输入位置。
另请参阅setPreviousInputPos().
[保护成员]
void QAbstract3DInputHandler::setPrevDistance(int distance)
设置最后两个输入位置之间的距离 distance(曼哈顿长度)。
另请参阅prevDistance().
[保护成员]
void QAbstract3DInputHandler::setPreviousInputPos(const QPoint &position)
将上一个输入位置设置为由 position 给出的点。
另请参阅previousInputPos().
[虚拟]
void QAbstract3DInputHandler::touchEvent(QTouchEvent *event)
重写此方法以处理触摸输入事件。触摸事件通过 event 提供。
[虚拟]
void QAbstract3DInputHandler::wheelEvent(QWheelEvent *event)
重写此方法以处理滚轮事件。滚轮事件通过 event 提供。
© 2024 Qt公司有限公司。本文件中的文档贡献权属于各自的所有者。本文件提供的文档根据《GNU自由文档许可证版本1.3》的规定进行许可,由自由软件基金会发布。Qt及其相应标志是芬兰及其它国家和地区Qt公司有限公司的商标。所有其他商标均为各自所有者的财产。