Qt3DRender::QPickingSettings Class
class Qt3DRender::QPickingSettingsLa clase QPickingSettings especifica cómo se gestiona la recogida de entidades. Más...
| Cabecera: | #include <QPickingSettings> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender)target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| En QML: | PickingSettings |
| Hereda: | Qt3DCore::QNode |
| Status: | Obsoleto |
Tipos públicos
| enum | FaceOrientationPickingMode { FrontFace, BackFace, FrontAndBackFace } |
| enum | PickMethod { BoundingVolumePicking, TrianglePicking, LinePicking, PointPicking, PrimitivePicking } |
| enum | PickResultMode { NearestPick, AllPicks, NearestPriorityPick } |
Propiedades
- faceOrientationPickingMode : FaceOrientationPickingMode
- pickMethod : PickMethod
- pickResultMode : PickResultMode
- worldSpaceTolerance : float
Funciones públicas
| Qt3DRender::QPickingSettings::FaceOrientationPickingMode | faceOrientationPickingMode() const |
| Qt3DRender::QPickingSettings::PickMethod | pickMethod() const |
| Qt3DRender::QPickingSettings::PickResultMode | pickResultMode() const |
| float | worldSpaceTolerance() const |
Ranuras públicas
| void | setFaceOrientationPickingMode(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode) |
| void | setPickMethod(Qt3DRender::QPickingSettings::PickMethod pickMethod) |
| void | setPickResultMode(Qt3DRender::QPickingSettings::PickResultMode pickResultMode) |
| void | setWorldSpaceTolerance(float worldSpaceTolerance) |
Señales
| void | faceOrientationPickingModeChanged(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode) |
| void | pickMethodChanged(Qt3DRender::QPickingSettings::PickMethod pickMethod) |
| void | pickResultModeChanged(Qt3DRender::QPickingSettings::PickResultMode pickResult) |
| void | worldSpaceToleranceChanged(float worldSpaceTolerance) |
Descripción detallada
Los ajustes de picking determinan cómo se gestiona el picking de entidades. Para más detalles sobre la recogida de entidades, consulte la documentación de los componentes QObjectPicker y QRayCaster.
Cuando se utilizan los componentes QObjectPicker, la selección se realiza mediante eventos del ratón.
Cuando se utilizan los componentes QRayCaster o QScreenRayCaster, el picking puede ser activado explícitamente por la aplicación.
En ambos casos, se lanzará un rayo a través de la escena para encontrar la geometría que se cruza con el rayo.
Véase también QObjectPicker, QPickEvent, QPickTriangleEvent, QRayCaster, y QScreenRayCaster.
Documentación de tipos de miembros
enum QPickingSettings::FaceOrientationPickingMode
Especifica cómo afecta la orientación de la cara a la selección de triángulos
| Constante | Valor | Descripción |
|---|---|---|
Qt3DRender::QPickingSettings::FrontFace | 0x01 | Sólo se seleccionarán los triángulos orientados hacia delante (por defecto). |
Qt3DRender::QPickingSettings::BackFace | 0x02 | Sólo se seleccionan los triángulos orientados hacia atrás. |
Qt3DRender::QPickingSettings::FrontAndBackFace | 0x03 | Se seleccionarán tanto los triángulos frontales como los posteriores. |
enum QPickingSettings::PickMethod
Especifica el método de recogida.
| Constante | Valor | Descripción |
|---|---|---|
Qt3DRender::QPickingSettings::BoundingVolumePicking | 0x00 | Se considera que una entidad ha sido seleccionada si el rayo de selección interseca el volumen delimitador de la entidad (por defecto). |
Qt3DRender::QPickingSettings::TrianglePicking | 0x01 | Una entidad se considera seleccionada si el rayo de selección se cruza con cualquier triángulo del componente de malla de la entidad. |
Qt3DRender::QPickingSettings::LinePicking | 0x02 | Se considera que una entidad ha sido seleccionada si el rayo de selección se cruza con cualquier borde del componente de malla de la entidad. |
Qt3DRender::QPickingSettings::PointPicking | 0x04 | Se considera que una entidad ha sido seleccionada si el rayo de selección se cruza con cualquier punto del componente de malla de la entidad. |
Qt3DRender::QPickingSettings::PrimitivePicking | TrianglePicking | LinePicking | PointPicking | Se considera que una entidad ha sido seleccionada si el rayo de selección se cruza con cualquier punto, arista o triángulo del componente de malla de la entidad. |
enum QPickingSettings::PickResultMode
Especifica lo que se incluye en los resultados de la selección.
| Constante | Valor | Descripción |
|---|---|---|
Qt3DRender::QPickingSettings::NearestPick | 0 | Sólo se selecciona la entidad más cercana al origen del rayo de selección intersectada por el rayo de selección (por defecto). |
Qt3DRender::QPickingSettings::AllPicks | 1 | Se seleccionan todas las entidades que intersecan el rayo de selección. |
Qt3DRender::QPickingSettings::NearestPriorityPick | 2 | Selecciona la entidad cuyo selector de objetos tenga el valor más alto. Si varios selectores de objetos tienen la misma prioridad, se selecciona el más cercano en el rayo. |
Véase también Qt3DRender::QPickEvent.
Documentación de propiedades
faceOrientationPickingMode : FaceOrientationPickingMode
Especifica cómo afecta la orientación de las caras a la selección de triángulos
Funciones de acceso:
| Qt3DRender::QPickingSettings::FaceOrientationPickingMode | faceOrientationPickingMode() const |
| void | setFaceOrientationPickingMode(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode) |
Señal del notificador:
| void | faceOrientationPickingModeChanged(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode) |
pickMethod : PickMethod
Mantiene el método de selección actual.
Por defecto, y por razones de rendimiento, el fundido de rayos utilizará la selección por volumen delimitador. Sin embargo, esto puede dar lugar a resultados inesperados si un objeto pequeño está inmerso en la esfera de un objeto grande detrás de él.
La selección de triángulos produce resultados exactos, pero es más costosa desde el punto de vista computacional.
Funciones de acceso:
| Qt3DRender::QPickingSettings::PickMethod | pickMethod() const |
| void | setPickMethod(Qt3DRender::QPickingSettings::PickMethod pickMethod) |
Señal de notificación:
| void | pickMethodChanged(Qt3DRender::QPickingSettings::PickMethod pickMethod) |
pickResultMode : PickResultMode
Mantiene el modo actual de resultados de picking.
Por defecto, los resultados del pick sólo se producirán para la entidad más cercana a la cámara.
Cuando se establece el método de selección a AllPicks, los eventos serán disparados para todas las entidades con un QObjectPicker a lo largo del rayo.
Cuando se establece el método pick a NearestPriorityPick, los eventos serán disparados para el picker de mayor prioridad más cercano. Esto puede ser usado cuando un elemento dado debe ser siempre seleccionado incluso si otros están delante de él.
Si se asigna un QObjectPicker a una entidad con múltiples hijos, se disparará un evento por cada entidad hija que intersecte el rayo.
Funciones de acceso:
| Qt3DRender::QPickingSettings::PickResultMode | pickResultMode() const |
| void | setPickResultMode(Qt3DRender::QPickingSettings::PickResultMode pickResultMode) |
Señal del notificador:
| void | pickResultModeChanged(Qt3DRender::QPickingSettings::PickResultMode pickResult) |
worldSpaceTolerance : float
Contiene el umbral, en coordenadas del espacio modelo, utilizado para evaluar la selección de líneas y puntos.
Funciones de acceso:
| float | worldSpaceTolerance() const |
| void | setWorldSpaceTolerance(float worldSpaceTolerance) |
Señal del notificador:
| void | worldSpaceToleranceChanged(float worldSpaceTolerance) |
Documentación de la función miembro
[slot] void QPickingSettings::setWorldSpaceTolerance(float worldSpaceTolerance)
Establece el umbral utilizado para la selección de líneas y puntos en worldSpaceTolerance.
Nota: Función Setter para la propiedad worldSpaceTolerance.
Véase también worldSpaceTolerance().
float QPickingSettings::worldSpaceTolerance() const
Devuelve la precisión de línea y punto worldSpaceTolerance
Nota: Función Getter para la propiedad worldSpaceTolerance.
Véase también setWorldSpaceTolerance().
© 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.