Qt3DRender::QRayCaster Class
class Qt3DRender::QRayCasterQt3DRender::QRayCaster est utilisé pour effectuer des tests de coulée de rayons dans les coordonnées du monde 3D. Plus d'informations...
| En-tête : | #include <QRayCaster> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS 3drender)target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake : | QT += 3drender |
| En QML : | RayCaster |
| Hérite : | Qt3DRender::QAbstractRayCaster |
| Statut : | Déclassé |
Propriétés
Fonctions publiques
Emplacements publics
| void | setDirection(const QVector3D &direction) |
| void | setLength(float length) |
| void | setOrigin(const QVector3D &origin) |
| void | trigger() |
| void | trigger(const QVector3D &origin, const QVector3D &direction, float length) |
Signaux
| void | directionChanged(const QVector3D &direction) |
| void | lengthChanged(float length) |
| void | originChanged(const QVector3D &origin) |
Description détaillée
Le rayon 3D est défini par son origine, sa direction et sa longueur. Il sera affecté par les transformations appliquées à l'entité à laquelle il appartient.
Les tests de moulage de rayon sont effectués à chaque image tant que le composant est activé. La propriété hits sera mise à jour avec la liste des intersections.
Voir également QAbstractRayCaster, QScreenRayCaster, et QNoPicking.
Documentation sur les propriétés
direction : QVector3D
Indique la direction du rayon 3D. Il doit s'agir d'un vecteur unitaire.
Fonctions d'accès :
| QVector3D | direction() const |
| void | setDirection(const QVector3D &direction) |
Signal de notification :
| void | directionChanged(const QVector3D &direction) |
length : float
Détient la longueur du rayon 3D.
Fonctions d'accès :
| float | length() const |
| void | setLength(float length) |
Signal de notification :
| void | lengthChanged(float length) |
origin : QVector3D
Détient l'origine du rayon 3D en coordonnées locales.
Fonctions d'accès :
| QVector3D | origin() const |
| void | setOrigin(const QVector3D &origin) |
Signal du notificateur :
| void | originChanged(const QVector3D &origin) |
Fonction membre Documentation
[slot] void QRayCaster::setLength(float length)
Fixe la longueur du rayon à length.
Si la valeur est inférieure ou égale à zéro, le rayon est considéré comme infini.
Remarque : fonction de définition de la propriété length.
Voir également length().
[slot] void QRayCaster::trigger()
Méthode pratique pour activer le composant et déclencher des tests en utilisant le rayon actuel.
Remarque : ce slot est surchargé. Pour se connecter à ce slot :
// Connect using qOverload:
connect(sender, &SenderClass::signal,
rayCaster, qOverload<>(&QRayCaster::trigger));
// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
rayCaster, [receiver = rayCaster]() { receiver->trigger(); });[slot] void QRayCaster::trigger(const QVector3D &origin, const QVector3D &direction, float length)
Méthode pratique pour définir les détails des rayons origin, direction, et length, et permettre au composant de déclencher des tests.
Remarque : ce slot est surchargé. Pour se connecter à ce slot :
// Connect using qOverload:
connect(sender, &SenderClass::signal,
rayCaster, qOverload(&QRayCaster::trigger));
// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
rayCaster, [receiver = rayCaster](const QVector3D &origin, const QVector3D &direction, float length) { receiver->trigger(origin, direction, length); }); © 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.