En esta página

QAbstract3DInputHandler Class

La clase base para implementaciones de manejadores de entrada. Más...

Cabecera: #include <QAbstract3DInputHandler>
CMake: find_package(Qt6 REQUIRED COMPONENTS DataVisualization)
target_link_libraries(mytarget PRIVATE Qt6::DataVisualization)
qmake: QT += datavisualization
Desde: QtDataVisualization 1.0
En QML: AbstractInputHandler3D
Hereda de: QObject
Heredado de:

Q3DInputHandler

Tipos Públicos

enum InputView { InputViewNone, InputViewOnPrimary, InputViewOnSecondary }

Propiedades

Funciones públicas

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)

Señales

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

Funciones protegidas

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

Descripción Detallada

QAbstract3DInputHandler es la clase base que es subclasificada por diferentes implementaciones de manejo de entrada que toman eventos de entrada y los traducen a movimientos de cámara y luz. Los manejadores de entrada también traducen eventos de entrada crudos a eventos de corte y selección en la escena.

Documentación de tipos de miembros

enum QAbstract3DInputHandler::InputView

Vistas de entrada predefinidas para gestores de entrada basados en el ratón y el tacto.

ConstanteValorDescripción
QAbstract3DInputHandler::InputViewNone0Ratón o toque no en una vista.
QAbstract3DInputHandler::InputViewOnPrimary1Entrada de ratón o táctil recibida en el área de vista primaria. Si se muestra la vista secundaria cuando inputView se convierte en InputViewOnPrimary, la vista secundaria se cierra.
QAbstract3DInputHandler::InputViewOnSecondary2Entrada de ratón o táctil recibida en el área de vista secundaria.

Documentación de Propiedades

inputPosition : QPoint

Esta propiedad contiene la última posición de entrada basada en los eventos de entrada procesados.

Funciones de acceso:

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

Señal del notificador:

void positionChanged(const QPoint &position)

inputView : InputView

Esta propiedad contiene la vista de entrada enumerada actual basada en la vista de los eventos de entrada procesados.

Es uno de los valores del enum InputView.

Cuando cambia la vista, se emite la señal inputViewChanged.

Funciones de acceso:

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

Señal del notificador:

void inputViewChanged(QAbstract3DInputHandler::InputView view)

Véase también InputView.

scene : Q3DScene*

Esta propiedad contiene la escena 3D que este manejador de entrada abstracto está controlando.

Un manejador de entrada puede controlar una escena. Establecer una escena a un controlador de entrada no transfiere la propiedad de la escena.

Funciones de acceso:

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

Señal del notificador:

void sceneChanged(Q3DScene *scene)

Documentación de funciones miembro

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

Construye la clase base. Se puede dar un parámetro opcional parent que se pasa al constructor QObject.

[virtual noexcept] QAbstract3DInputHandler::~QAbstract3DInputHandler()

Destruye la clase base.

[virtual] void QAbstract3DInputHandler::mouseDoubleClickEvent(QMouseEvent *event)

Sobreescribe esto para manejar los eventos de doble click del ratón. El evento de doble clic del ratón se indica en event.

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

Sobreescribe esto para manejar los eventos de movimiento del ratón. El evento de movimiento del ratón se indica en event y la posición del ratón en mousePos.

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

Sobreescribe esto para manejar los eventos de pulsación del ratón. El evento de pulsación del ratón se da en event y la posición del ratón en mousePos.

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

Sobreescribe esto para manejar los eventos de liberación del ratón. El evento de liberación del ratón se da en event y la posición del ratón en mousePos.

[protected] int QAbstract3DInputHandler::prevDistance() const

Devuelve la longitud manhattan entre las dos últimas posiciones de entrada.

Véase también setPrevDistance().

[protected] QPoint QAbstract3DInputHandler::previousInputPos() const

Devuelve la posición de entrada anterior.

Véase también setPreviousInputPos().

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

Establece la distance (longitud manhattan) entre las dos últimas posiciones de entrada.

Véase también prevDistance().

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

Establece la posición de entrada anterior en el punto dado por position.

Véase también previousInputPos().

[virtual] void QAbstract3DInputHandler::touchEvent(QTouchEvent *event)

Sobreescribe esto para manejar eventos de entrada táctil. El evento táctil se indica en event.

[virtual] void QAbstract3DInputHandler::wheelEvent(QWheelEvent *event)

Sobreescribe esto para manejar eventos de rueda. El evento de rueda se indica en event.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.