Qt3DRender::QLayerFilter Class
class Qt3DRender::QLayerFilterControla las capas dibujadas en una rama del gráfico de marco. Más...
| Cabecera: | #include <QLayerFilter> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender)target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| En QML: | LayerFilter |
| Hereda: | Qt3DRender::QFrameGraphNode |
| Status: | Obsoleto |
Tipos públicos
| enum | FilterMode { AcceptAnyMatchingLayers, AcceptAllMatchingLayers, DiscardAnyMatchingLayers, DiscardAllMatchingLayers } |
Propiedades
- filterMode : FilterMode
Funciones públicas
| 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) |
Señales
| void | filterModeChanged(Qt3DRender::QLayerFilter::FilterMode filterMode) |
Descripción detallada
Un Qt3DRender::QLayerFilter puede ser usado para instruir al renderizador sobre que capa(s) dibujar en esa rama del frame graph. QLayerFilter selecciona qué entidades dibujar basándose en la(s) instancia(s) QLayer añadida(s) al QLayerFilter y como componentes a Qt3DCore::QEntity.
QLayerFilter puede configurarse para seleccionar o descartar entidades con un QLayer específico en función de la propiedad filterMode. Por defecto, se seleccionan las entidades que hacen referencia a uno de los objetos QLayer a los que también hace referencia QLayerFilter (AcceptAnyMatchingLayers).
Dentro del árbol FrameGraph, se pueden anidar múltiples nodos QLayerFilter dentro de una rama que vaya de la raíz a una hoja. En ese caso, el filtrado operará primero sobre todas las entidades de la escena utilizando el método de filtrado especificado por el primer QLayerFilter declarado. A continuación, el subconjunto de entidades filtrado se filtrará de nuevo basándose en el método de filtrado establecido en el segundo QLayerFilter declarado. Esto se repite hasta que se hayan consumido todos los nodos QLayerFilter de la rama.
Documentación de tipos de miembros
enum QLayerFilter::FilterMode
Especifica las reglas de selección de las entidades a dibujar.
| Constante | Valor | Descripción |
|---|---|---|
Qt3DRender::QLayerFilter::AcceptAnyMatchingLayers | 0 | Acepta entidades que hacen referencia a uno o más objetos QLayer añadidos a este QLayerFilter. Este es el valor por defecto |
Qt3DRender::QLayerFilter::AcceptAllMatchingLayers | 1 | Aceptar las entidades que hacen referencia a todos los objetos QLayer añadidos a este objeto QLayerFilter |
Qt3DRender::QLayerFilter::DiscardAnyMatchingLayers | 2 | Descartar entidades que hagan referencia a uno o más objetos QLayer añadidos a este objeto QLayerFilter |
Qt3DRender::QLayerFilter::DiscardAllMatchingLayers | 3 | Descartar entidades que hacen referencia a todos los objetos QLayer añadidos a este objeto QLayerFilter |
Documentación de propiedades
filterMode : FilterMode
Contiene el modo de filtro que especifica las entidades a seleccionar para el dibujo.
El valor por defecto es AcceptMatchingLayers.
Funciones de acceso:
| Qt3DRender::QLayerFilter::FilterMode | filterMode() const |
| void | setFilterMode(Qt3DRender::QLayerFilter::FilterMode filterMode) |
Señal del notificador:
| void | filterModeChanged(Qt3DRender::QLayerFilter::FilterMode filterMode) |
Documentación de la función miembro
[explicit] QLayerFilter::QLayerFilter(Qt3DCore::QNode *parent = nullptr)
El constructor crea una instancia con la dirección parent especificada.
void QLayerFilter::addLayer(Qt3DRender::QLayer *layer)
Añadir layer a la lista actual de capas
QList<Qt3DRender::QLayer *> QLayerFilter::layers() const
Devuelve la lista actual de capas
void QLayerFilter::removeLayer(Qt3DRender::QLayer *layer)
Eliminar layer de la lista actual de capas
© 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.