En esta página

Qt3DRender::QLayerFilter Class

class Qt3DRender::QLayerFilter

Controla 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

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.

ConstanteValorDescripción
Qt3DRender::QLayerFilter::AcceptAnyMatchingLayers0Acepta entidades que hacen referencia a uno o más objetos QLayer añadidos a este QLayerFilter. Este es el valor por defecto
Qt3DRender::QLayerFilter::AcceptAllMatchingLayers1Aceptar las entidades que hacen referencia a todos los objetos QLayer añadidos a este objeto QLayerFilter
Qt3DRender::QLayerFilter::DiscardAnyMatchingLayers2Descartar entidades que hagan referencia a uno o más objetos QLayer añadidos a este objeto QLayerFilter
Qt3DRender::QLayerFilter::DiscardAllMatchingLayers3Descartar 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.