Qt3DRender::QObjectPicker Class
class Qt3DRender::QObjectPickerLa clase QObjectPicker instancia un componente que puede ser utilizado para interactuar con una QEntity mediante un proceso conocido como picking. Más...
| Cabecera: | #include <QObjectPicker> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender)target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| En QML: | ObjectPicker |
| Hereda: | Qt3DCore::QComponent |
| Status: | Obsoleto |
Propiedades
|
Funciones públicas
| bool | containsMouse() const |
| bool | isDragEnabled() const |
| bool | isHoverEnabled() const |
| bool | isPressed() const |
| int | priority() const |
Ranuras públicas
| void | setDragEnabled(bool dragEnabled) |
| void | setHoverEnabled(bool hoverEnabled) |
| void | setPriority(int priority) |
Señales
| void | clicked(Qt3DRender::QPickEvent *pick) |
| void | containsMouseChanged(bool containsMouse) |
| void | dragEnabledChanged(bool dragEnabled) |
| void | entered() |
| void | exited() |
| void | hoverEnabledChanged(bool hoverEnabled) |
| void | moved(Qt3DRender::QPickEvent *pick) |
| void | pressed(Qt3DRender::QPickEvent *pick) |
| void | pressedChanged(bool pressed) |
| void | priorityChanged(int priority) |
| void | released(Qt3DRender::QPickEvent *pick) |
Descripción Detallada
Para cada combinación de vista y cámara, picking lanza un rayo a través de la escena para encontrar entidades cuyo volumen límite intersecte el rayo. El volumen delimitador se calcula utilizando los valores del búfer de atributos especificado por el atributo boundingVolumePositionAttribute de la geometría.
Las señales pressed(), released(), clicked(), moved(), entered() y exited() se emiten cuando el volumen delimitador definido por la propiedad pickAttribute se cruza con un rayo.
La mayoría de las señales llevan una instancia QPickEvent. Si QPickingSettings::pickMode() tiene el valor QPickingSettings::TrianglePicking, el tipo real del parámetro pick será QPickTriangleEvent.
Las consultas pick se realizan al pulsar y soltar el ratón. Si la opción de arrastrar está activada, las consultas también se realizan en cada movimiento del ratón mientras cualquier botón está pulsado. Si está activado el hover, las consultas se realizan en cada movimiento del ratón aunque no haya ningún botón pulsado.
Para consultas generalizadas sobre la proyección de rayos, véase Qt3DRender::QRayCaster y Qt3DRender::QScreenRayCaster.
Nota: Las instancias de este componente no deben ser compartidas, el no respetar esta condición probablemente resultará en un comportamiento indefinido.
Nota: El valor del plano lejano de la cámara afecta al picking y produce resultados incorrectos debido a la precisión en coma flotante si es mayor de ~100 000.
Ver también Qt3DRender::QPickingSettings, Qt3DCore::QGeometry, Qt3DCore::QAttribute, Qt3DRender::QPickEvent, Qt3DRender::QPickTriangleEvent, y Qt3DRender::QNoPicking.
Documentación de propiedades
[read-only] containsMouse : bool
Especifica si el selector de objetos contiene actualmente el ratón
Funciones de acceso:
| bool | containsMouse() const |
Señal del notificador:
| void | containsMouseChanged(bool containsMouse) |
dragEnabled : bool
Especifica si el arrastre está activado
Funciones de acceso:
| bool | isDragEnabled() const |
| void | setDragEnabled(bool dragEnabled) |
Señal del notificador:
| void | dragEnabledChanged(bool dragEnabled) |
hoverEnabled : bool
Especifica si el hover está activado
Funciones de acceso:
| bool | isHoverEnabled() const |
| void | setHoverEnabled(bool hoverEnabled) |
Señal del notificador:
| void | hoverEnabledChanged(bool hoverEnabled) |
[read-only] pressed : bool
Especifica si el selector de objetos está actualmente pulsado
Funciones de acceso:
| bool | isPressed() const |
Señal del notificador:
| void | pressedChanged(bool pressed) |
priority : int
La prioridad que se utilizará al filtrar los resultados de la selección por prioridad cuando QPickingSettings::pickResultMode esté configurado como QPickingSettings::NearestPriorityPick.
Funciones de acceso:
| int | priority() const |
| void | setPriority(int priority) |
Señal del notificador:
| void | priorityChanged(int priority) |
Documentación de la función miembro
[signal] void QObjectPicker::clicked(Qt3DRender::QPickEvent *pick)
Esta señal se emite cuando el volumen delimitador definido por la propiedad pickAttribute se cruza con un rayo al hacer clic con el ratón el QPickEvent pick contiene detalles del evento.
bool QObjectPicker::containsMouse() const
Devuelve true si el selector de objetos contiene actualmente el ratón
Nota: Función Getter para la propiedad containsMouse.
[signal] void QObjectPicker::entered()
Esta señal se emite cuando el volumen delimitador definido por la propiedad pickAttribute se cruza con un rayo del ratón que entra en el volumen.
[signal] void QObjectPicker::exited()
Esta señal se emite cuando el volumen delimitador definido por la propiedad pickAttribute se cruza con un rayo en el rayo que sale del volumen.
bool QObjectPicker::isDragEnabled() const
Devuelve true si el arrastre está habilitado
Nota: Función Getter para la propiedad dragEnabled.
bool QObjectPicker::isHoverEnabled() const
Devuelve true si está activado el hover
Nota: Función Getter para la propiedad hoverEnabled.
[signal] void QObjectPicker::moved(Qt3DRender::QPickEvent *pick)
Esta señal se emite cuando el volumen delimitador definido por la propiedad pickAttribute se cruza con un rayo en un movimiento del ratón con un botón pulsado el QPickEvent pick contiene detalles del evento.
[signal] void QObjectPicker::pressed(Qt3DRender::QPickEvent *pick)
Esta señal se emite cuando el volumen delimitador definido por la propiedad pickAttribute se cruza con un rayo al pulsar con el ratón el QPickEvent pick contiene detalles del evento.
[signal] void QObjectPicker::released(Qt3DRender::QPickEvent *pick)
Esta señal se emite cuando el volumen delimitador definido por la propiedad pickAttribute se cruza con un rayo en un lanzamiento del ratón el QPickEvent pick contiene detalles del evento.
[slot] void QObjectPicker::setDragEnabled(bool dragEnabled)
Establece la propiedad dragEnabled a dragEnabled
Nota: Función Setter para la propiedad dragEnabled.
Véase también isDragEnabled().
[slot] void QObjectPicker::setHoverEnabled(bool hoverEnabled)
Establece la propiedad hoverEnabled a hoverEnabled
Nota: Función Setter para la propiedad hoverEnabled.
Véase también isHoverEnabled().
[slot] void QObjectPicker::setPriority(int priority)
Establece la prioridad del recogedor en priority. Se utiliza cuando el modo de resultado de recogida en QPickingSettings se establece en QPickingSettings::NearestPriorityPick. Los resultados de picking se ordenan según la prioridad más alta y la distancia de picking más corta.
Nota: Función Setter para la propiedad priority.
Véase también priority().
© 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.