Qt3DCore::QBoundingVolume Class
class Qt3DCore::QBoundingVolumepeut être utilisé pour remplacer le volume englobant d'une entité. En savoir plus...
| En-tête : | #include <Qt3DCore/QBoundingVolume> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS 3DCore) target_link_libraries(mytarget PRIVATE Qt6::3DCore) |
| qmake : | QT += 3dcore |
| Depuis : | Qt 6.0 |
| En QML : | BoundingVolume |
| Hérite de : | Qt3DCore::QComponent |
| Hérité par : | |
| Statut : | Obsolète |
Cette classe est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Propriétés
|
Fonctions publiques
| QBoundingVolume(Qt3DCore::QNode *parent = nullptr) | |
| bool | areImplicitPointsValid() const |
| QVector3D | implicitMaxPoint() const |
| QVector3D | implicitMinPoint() const |
| QVector3D | maxPoint() const |
| QVector3D | minPoint() const |
| Qt3DCore::QGeometryView * | view() const |
Emplacements publics
| void | setMaxPoint(const QVector3D &maxPoint) |
| void | setMinPoint(const QVector3D &minPoint) |
| void | setView(Qt3DCore::QGeometryView *view) |
| bool | updateImplicitBounds() |
Signaux
| void | implicitMaxPointChanged(const QVector3D &implicitMaxPoint) |
| void | implicitMinPointChanged(const QVector3D &implicitMinPoint) |
| void | implicitPointsValidChanged(bool implicitPointsValid) |
| void | maxPointChanged(QVector3D maxPoint) |
| void | minPointChanged(QVector3D minPoint) |
| void | viewChanged(Qt3DCore::QGeometryView *view) |
Description détaillée
Le volume englobant d'une entité est utilisé pour de nombreuses opérations, telles que la sélection ou le culling du cône de vision. Il est normalement calculé en parcourant la géométrie rendue.
QBoundingVolume peut être utilisé lorsque l'application connaît l'étendue de la géométrie, ce qui évite à l'Qt 3D e de devoir la calculer.
Un volume englobant peut être fourni soit sous forme de coordonnées d'étendue minimale et maximale, soit sous la forme d'une géométrie distincte, généralement plus simple, qui se rapproche du maillage rendu.
Lorsque l’on utilise des étendues minimale et maximale, celles-ci sont considérées comme les coins opposés d’un parallélépipède rectangulaire aligné sur les axes, dans le système de coordonnées local de la géométrie.
QBoundingVolume peut également être utilisé pour interroger le volume englobant calculé d’un ` GeometryView`. Les propriétés ` implicitMinPoint ` et ` implicitMaxPoint ` seront mises à jour si la géométrie change. Notez que cette opération s’effectue de manière asynchrone sur un thread d’arrière-plan ; vous devez donc vérifier la valeur de ` implicitPointsValid ` avant de les lire.
Vous pouvez forcer la mise à jour des limites implicites en appelant updateImplicitBounds. Cela bloquera le thread appelant jusqu’à ce que les résultats soient disponibles.
Remarque : la méthode ` GeometryRenderer ` hérite de ` BoundingVolume ` et prend donc en charge la lecture des limites implicites ainsi que la définition de limites explicites.
Documentation des propriétés
[read-only] implicitMaxPoint : QVector3D
* * * Contient l'étendue maximale du volume englobant calculée à partir de la vue spécifiée.
Fonctions d'accès :
| QVector3D | implicitMaxPoint() const |
Signal de notification :
| void | implicitMaxPointChanged(const QVector3D &implicitMaxPoint) |
[read-only] implicitMinPoint : QVector3D
* * * Contient l'étendue minimale du volume englobant calculée à partir de la vue spécifiée.
Fonctions d'accès :
| QVector3D | implicitMinPoint() const |
Signal de notification :
| void | implicitMinPointChanged(const QVector3D &implicitMinPoint) |
[read-only] implicitPointsValid : bool
* * * Vrai si une vue a été attribuée et si les propriétés d'étendue implicites sont à jour. * *
Fonctions d'accès :
| bool | areImplicitPointsValid() const |
Signal de notification :
| void | implicitPointsValidChanged(bool implicitPointsValid) |
Voir également updateImplicitBounds.
maxPoint : QVector3D
* * * Étendue maximale du volume englobant spécifiée par l'utilisateur. Lorsqu'elle est définie (en même temps que l'*étendue minimale), cette valeur sera utilisée en interne pour éviter de calculer le volume à partir de la *géométrie.
Fonctions d'accès :
| QVector3D | maxPoint() const |
| void | setMaxPoint(const QVector3D &maxPoint) |
Signal de notification :
| void | maxPointChanged(QVector3D maxPoint) |
minPoint : QVector3D
* * * Étendue minimale du volume englobant spécifiée par l'utilisateur. Lorsqu'elle est définie (en même temps que l'étendue maximale), cette valeur sera utilisée en interne pour éviter de calculer le volume à partir de la géométrie.
Fonctions d'accès :
| QVector3D | minPoint() const |
| void | setMinPoint(const QVector3D &minPoint) |
Signal de notification :
| void | minPointChanged(QVector3D minPoint) |
view : QGeometryView*
* * * Contient un pointeur vers l'instance de QGeometryView qui sera utilisée, si elle est définie, * pour calculer le volume englobant.
Fonctions d'accès :
| Qt3DCore::QGeometryView * | view() const |
| void | setView(Qt3DCore::QGeometryView *view) |
Signal de notification :
| void | viewChanged(Qt3DCore::QGeometryView *view) |
Documentation des fonctions membres
[explicit] QBoundingVolume::QBoundingVolume(Qt3DCore::QNode *parent = nullptr)
Crée un nouvel objet QBoundingVolume à l'aide de ` parent`.
[slot] bool QBoundingVolume::updateImplicitBounds()
* Met à jour les limites implicites de la vue spécifiée. Renvoie * true si le calcul a abouti et false dans le cas contraire. * *
Remarque : les calculs sont effectués dans le thread d’appel, ce qui * peut prendre un temps considérable pour les maillages volumineux.
© 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.