Qt3DRender::QObjectPicker Class
class Qt3DRender::QObjectPickerLa classe QObjectPicker instancie un composant qui peut être utilisé pour interagir avec une QEntity par un processus connu sous le nom de picking. Plus d'informations...
| En-tête : | #include <QObjectPicker> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS 3drender)target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake : | QT += 3drender |
| En QML : | ObjectPicker |
| Hérite : | Qt3DCore::QComponent |
| Statut : | Déclassé |
Propriétés
|
Fonctions publiques
| bool | containsMouse() const |
| bool | isDragEnabled() const |
| bool | isHoverEnabled() const |
| bool | isPressed() const |
| int | priority() const |
Emplacements publics
| void | setDragEnabled(bool dragEnabled) |
| void | setHoverEnabled(bool hoverEnabled) |
| void | setPriority(int priority) |
Signaux
| 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) |
Description détaillée
Pour chaque combinaison de fenêtre et de caméra, picking lance un rayon à travers la scène pour trouver les entités dont le volume de délimitation intersecte le rayon. Le volume de délimitation est calculé à l'aide des valeurs du tampon d'attributs spécifié par l'attribut boundingVolumePositionAttribute de la géométrie.
Les signaux pressed(), released(), clicked(), moved(), entered() et exited() sont émis lorsque le volume délimité défini par la propriété pickAttribute croise un rayon.
La plupart des signaux sont accompagnés d'une instance QPickEvent. Si QPickingSettings::pickMode() est défini sur QPickingSettings::TrianglePicking, le type réel du paramètre de sélection sera QPickTriangleEvent.
Les requêtes de sélection sont effectuées lorsque la souris est pressée et relâchée. Si l'option "drag" est activée, les requêtes sont également effectuées à chaque déplacement de la souris lorsque l'un des boutons est enfoncé. Si le survol est activé, les requêtes sont effectuées à chaque mouvement de la souris, même si aucun bouton n'est enfoncé.
Pour des requêtes généralisées sur la projection de rayons, voir Qt3DRender::QRayCaster et Qt3DRender::QScreenRayCaster.
Remarque : les instances de ce composant ne doivent pas être partagées. Le non-respect de cette condition entraînera très probablement un comportement indéfini.
Remarque : La valeur du plan éloigné de la caméra affecte le prélèvement et produit des résultats incorrects en raison de la précision en virgule flottante si elle est supérieure à ~100 000.
Voir également Qt3DRender::QPickingSettings, Qt3DCore::QGeometry, Qt3DCore::QAttribute, Qt3DRender::QPickEvent, Qt3DRender::QPickTriangleEvent, et Qt3DRender::QNoPicking.
Documentation sur les propriétés
[read-only] containsMouse : bool
Spécifie si le sélecteur d'objets contient actuellement la souris
Fonctions d'accès :
| bool | containsMouse() const |
Signal de notification :
| void | containsMouseChanged(bool containsMouse) |
dragEnabled : bool
Indique si la fonction "glisser" est activée
Fonctions d'accès :
| bool | isDragEnabled() const |
| void | setDragEnabled(bool dragEnabled) |
Signal de notification :
| void | dragEnabledChanged(bool dragEnabled) |
hoverEnabled : bool
Spécifie si le survol est activé
Fonctions d'accès :
| bool | isHoverEnabled() const |
| void | setHoverEnabled(bool hoverEnabled) |
Signal de notification :
| void | hoverEnabledChanged(bool hoverEnabled) |
[read-only] pressed : bool
Indique si le sélecteur d'objets est actuellement activé.
Fonctions d'accès :
| bool | isPressed() const |
Signal de notification :
| void | pressedChanged(bool pressed) |
priority : int
La priorité à utiliser pour filtrer les résultats de la sélection par priorité lorsque QPickingSettings::pickResultMode est défini sur QPickingSettings::NearestPriorityPick.
Fonctions d'accès :
| int | priority() const |
| void | setPriority(int priority) |
Signal de notification :
| void | priorityChanged(int priority) |
Member Function Documentation
[signal] void QObjectPicker::clicked(Qt3DRender::QPickEvent *pick)
Ce signal est émis lorsque le volume délimité défini par la propriété pickAttribute croise un rayon lors d'un clic de souris. QPickEvent pick contient les détails de l'événement.
bool QObjectPicker::containsMouse() const
Renvoie un résultat positif si le sélecteur d'objets contient actuellement la souris.
Remarque : fonction Getter pour la propriété containsMouse.
[signal] void QObjectPicker::entered()
Ce signal est émis lorsque le volume délimité défini par la propriété pickAttribute croise un rayon de la souris entrant dans le volume.
[signal] void QObjectPicker::exited()
Ce signal est émis lorsque le volume délimité défini par la propriété pickAttribute croise un rayon sur le rayon sortant du volume.
bool QObjectPicker::isDragEnabled() const
Retourne vrai si le glissement est activé
Note : Fonction Getter pour la propriété dragEnabled.
bool QObjectPicker::isHoverEnabled() const
Retourne vrai si le survol est activé
Note : Fonction Getter pour la propriété hoverEnabled.
[signal] void QObjectPicker::moved(Qt3DRender::QPickEvent *pick)
Ce signal est émis lorsque le volume délimité défini par la propriété pickAttribute croise un rayon lors d'un déplacement de la souris avec un bouton enfoncé. QPickEvent pick contient les détails de l'événement.
[signal] void QObjectPicker::pressed(Qt3DRender::QPickEvent *pick)
Ce signal est émis lorsque le volume délimité défini par la propriété pickAttribute croise un rayon sur une pression de la souris. QPickEvent pick contient les détails de l'événement.
[signal] void QObjectPicker::released(Qt3DRender::QPickEvent *pick)
Ce signal est émis lorsque le volume délimité défini par la propriété pickAttribute croise un rayon sur une libération de la souris. Le site QPickEvent pick contient les détails de l'événement.
[slot] void QObjectPicker::setDragEnabled(bool dragEnabled)
Fixe la propriété dragEnabled à dragEnabled
Note : Fonction de définition de la propriété dragEnabled.
Voir aussi isDragEnabled().
[slot] void QObjectPicker::setHoverEnabled(bool hoverEnabled)
Fixe la propriété hoverEnabled à hoverEnabled
Note : Fonction de définition de la propriété hoverEnabled.
Voir aussi isHoverEnabled().
[slot] void QObjectPicker::setPriority(int priority)
Définit la priorité du préparateur de commandes sur priority. Cette fonction est utilisée lorsque le mode de résultat du prélèvement sur QPickingSettings est défini sur QPickingSettings::NearestPriorityPick. Les résultats du prélèvement sont triés en fonction de la priorité la plus élevée et de la distance de prélèvement la plus courte.
Remarque : fonction de définition de la propriété priority.
Voir également 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.