Qt3DRender::QLayerFilter Class
class Qt3DRender::QLayerFilterContrôle les couches dessinées dans une branche de graphique à cadre. Plus d'informations...
| En-tête : | #include <QLayerFilter> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS 3drender)target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake : | QT += 3drender |
| En QML : | LayerFilter |
| Hérite : | Qt3DRender::QFrameGraphNode |
| Statut : | Déclassé |
Types publics
| enum | FilterMode { AcceptAnyMatchingLayers, AcceptAllMatchingLayers, DiscardAnyMatchingLayers, DiscardAllMatchingLayers } |
Propriétés
- filterMode : FilterMode
Fonctions publiques
| QLayerFilter(Qt3DCore::QNode *parent = nullptr) | |
| void | addLayer(Qt3DRender::QLayer *layer) |
| Qt3DRender::QLayerFilter::FilterMode | filterMode() const |
| QList<Qt3DRender::QLayer *> | layers() const |
| void | removeLayer(Qt3DRender::QLayer *layer) |
| void | setFilterMode(Qt3DRender::QLayerFilter::FilterMode filterMode) |
Signaux
| void | filterModeChanged(Qt3DRender::QLayerFilter::FilterMode filterMode) |
Description détaillée
Une adresse Qt3DRender::QLayerFilter peut être utilisée pour indiquer au moteur de rendu quelle(s) couche(s) dessiner dans cette branche du graphe d'images. QLayerFilter sélectionne les entités à dessiner en fonction de la ou des instances QLayer ajoutées au QLayerFilter et en tant que composants à Qt3DCore::QEntity.
QLayerFilter peut être configuré pour sélectionner ou rejeter les entités ayant une QLayer spécifique en fonction de la propriété filterMode. Par défaut, les entités faisant référence à l'un des objets QLayer qui sont également référencés par QLayerFilter sont sélectionnées (AcceptAnyMatchingLayers).
Dans l'arbre FrameGraph, plusieurs nœuds QLayerFilter peuvent être imbriqués dans une branche allant de la racine à une feuille. Dans ce cas, le filtrage portera d'abord sur toutes les entités de la scène en utilisant la méthode de filtrage spécifiée par le premier nœud déclaré QLayerFilter. Ensuite, le sous-ensemble d'entités filtrées sera à nouveau filtré sur la base de la méthode de filtrage définie pour le deuxième QLayerFilter déclaré. Cette opération est répétée jusqu'à ce que tous les nœuds QLayerFilter de la branche aient été consommés.
Documentation sur les types de membres
enum QLayerFilter::FilterMode
Spécifie les règles de sélection des entités à dessiner.
| Constante | Valeur | Description |
|---|---|---|
Qt3DRender::QLayerFilter::AcceptAnyMatchingLayers | 0 | Accepte les entités qui font référence à un ou plusieurs objets QLayer ajoutés à ce site QLayerFilter. Il s'agit de la valeur par défaut |
Qt3DRender::QLayerFilter::AcceptAllMatchingLayers | 1 | Accepter les entités qui font référence à tous les objets QLayer ajoutés à cette page. QLayerFilter |
Qt3DRender::QLayerFilter::DiscardAnyMatchingLayers | 2 | Rejeter les entités qui font référence à un ou plusieurs objets QLayer ajoutés à cette page. QLayerFilter |
Qt3DRender::QLayerFilter::DiscardAllMatchingLayers | 3 | Rejeter les entités qui font référence à tous les objets QLayer ajoutés à cette page. QLayerFilter |
Documentation sur les propriétés
filterMode : FilterMode
Détient le mode de filtrage spécifiant les entités à sélectionner pour le dessin.
La valeur par défaut est AcceptMatchingLayers.
Fonctions d'accès :
| Qt3DRender::QLayerFilter::FilterMode | filterMode() const |
| void | setFilterMode(Qt3DRender::QLayerFilter::FilterMode filterMode) |
Signal Notificateur :
| void | filterModeChanged(Qt3DRender::QLayerFilter::FilterMode filterMode) |
Member Function Documentation
[explicit] QLayerFilter::QLayerFilter(Qt3DCore::QNode *parent = nullptr)
Le constructeur crée une instance avec l'adresse parent spécifiée.
void QLayerFilter::addLayer(Qt3DRender::QLayer *layer)
Ajouter layer à la liste actuelle des couches
QList<Qt3DRender::QLayer *> QLayerFilter::layers() const
Retourne la liste actuelle des couches
void QLayerFilter::removeLayer(Qt3DRender::QLayer *layer)
Supprimer layer de la liste actuelle des couches
© 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.