Qt3DCore::QBoundingVolume Class
class Qt3DCore::QBoundingVolumepeut être utilisée pour modifier le volume de délimitation d'une entité. 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 |
| Dans QML : | BoundingVolume |
| Hérite : | Qt3DCore::QComponent |
| Hérité par : | |
| Statut : | Déclassé |
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 de délimitation d'une entité est utilisé pour de nombreuses opérations telles que la sélection ou l'abattage du frustum de la vue. Il est normalement calculé en parcourant la géométrie rendue.
QBoundingVolume peut être utilisé lorsque l'étendue de la géométrie est connue de l'application, de sorte que Qt 3D n'ait pas à la calculer.
Un volume de délimitation peut être fourni soit sous la 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.
Lors de l'utilisation des étendues minimale et maximale, celles-ci sont considérées comme les coins opposés d'une boîte de délimitation alignée sur l'axe, dans le système de coordonnées local de la géométrie.
QBoundingVolume peut également être utilisé pour demander le volume de délimitation calculé d'un GeometryView. Les propriétés implicitMinPoint et implicitMaxPoint seront mises à jour en cas de modification de la géométrie. Notez que cette opération est effectuée de manière asynchrone sur un fil d'exécution en arrière-plan ; vous devez donc vérifier la valeur de implicitPointsValid avant de les lire.
Vous pouvez forcer la mise à jour des extensions implicites en appelant updateImplicitBounds. Cette opération bloquera le fil d'exécution de l'appelant jusqu'à ce que les résultats soient disponibles.
Remarque : GeometryRenderer hérite de BoundingVolume et prend donc également en charge la lecture des limites implicites ou la définition des limites explicites.
Documentation sur les propriétés
[read-only] implicitMaxPoint : QVector3D
* * * Détient l'étendue maximale du volume de délimitation calculé à 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
* * * Détient l'étendue minimale du volume de délimitation calculé à 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 que les propriétés implicites de l'étendue sont à jour. * *
Fonctions d'accès :
| bool | areImplicitPointsValid() const |
Signal Notifier :
| void | implicitPointsValidChanged(bool implicitPointsValid) |
Voir aussi updateImplicitBounds.
maxPoint : QVector3D
* * * L'étendue maximale du volume délimité est spécifiée par l'utilisateur. Lorsqu'elle est définie (en même temps que l'étendue * minimale), elle 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
* * * L'étendue minimale du volume délimité est spécifiée par l'utilisateur. Lorsqu'elle est définie (en même temps que l'étendue maximale), elle 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*
* * * Possède un pointeur sur l'instance de QGeometryView qui sera utilisée, si elle est définie, * pour calculer le volume de délimitation.
Fonctions d'accès :
| Qt3DCore::QGeometryView * | view() const |
| void | setView(Qt3DCore::QGeometryView *view) |
Signal du notificateur :
| void | viewChanged(Qt3DCore::QGeometryView *view) |
Fonction membre Documentation
[explicit] QBoundingVolume::QBoundingVolume(Qt3DCore::QNode *parent = nullptr)
Construit un nouveau QBoundingVolume avec parent.
[slot] bool QBoundingVolume::updateImplicitBounds()
* Met à jour les limites implicites de la vue spécifiée. Retourne * true si le calcul a réussi et false sinon. * *
Note : Les calculs sont effectués dans le thread d'appel, ce qui * peut prendre beaucoup de temps pour les grands maillages.
© 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.