Spec-Zone.ru › Qt 6.0

Класс QLayerFilter

класс Qt3DRender::QLayerFilter

Управляет слоями, нарисованными в ветви графа кадров. Подробнее...

Заголовок: #include <QLayerFilter>
CMake: find_package(Qt6 COMPONENTS 3drender REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
С момента: Qt 5.5
Инициализируется из: LayerFilter
Наследует: Qt3DRender::QFrameGraphNode
  • Список всех членов, включая унаследованные

Типы публичного доступа

перечисление FilterMode { AcceptAnyMatchingLayers, AcceptAllMatchingLayers, DiscardAnyMatchingLayers, DiscardAllMatchingLayers }

Свойства

  • filterMode : FilterMode

Публичные функции

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)

Сигналы

void filterModeChanged(Qt3DRender::QLayerFilter::FilterMode filterMode)

Подробное описание

Класс Qt3DRender::QLayerFilter может использоваться для указания рендереру, какие слои нужно отрисовать в данной ветви графа кадров. QLayerFilter выбирает, какие сущности отрисовать, основываясь на экземплярах QLayer, добавленных в QLayerFilter, и как компоненты Qt3DCore::QEntity.

QLayerFilter можно настроить на выбор или отбрасывание сущностей со специфическим слоем QLayer в зависимости от свойства filterMode. По умолчанию, сущности, ссылающиеся на один из объектов QLayer, которые также ссылаются на QLayerFilter, выбираются (AcceptAnyMatchingLayers).

В дереве FrameGraph несколько узлов QLayerFilter могут быть вложены в ветвь, идущую от корня к листу. В этом случае фильтрация сначала будет выполняться для всех сущностей сцены с использованием метода фильтрации, указанного первым объявленным QLayerFilter. Затем отфильтрованный подмножество сущностей будет отфильтровано снова в соответствии с методом фильтрации, установленным во втором объявленном QLayerFilter. Это повторяется до тех пор, пока не будут обработаны все узлы QLayerFilter ветви.

Документация по типам членов

перечисление QLayerFilter::FilterMode

Определяет правила выбора сущностей для отрисовки.

Постоянная Значение Описание
Qt3DRender::QLayerFilter::AcceptAnyMatchingLayers 0 Выбираются сущности, ссылающиеся на один или несколько объектов QLayer, добавленных в этот QLayerFilter. Это значение по умолчанию
Qt3DRender::QLayerFilter::AcceptAllMatchingLayers 1 Выбираются сущности, ссылающиеся на все объекты QLayer, добавленные в этот QLayerFilter
Qt3DRender::QLayerFilter::DiscardAnyMatchingLayers 2 Отбрасываются сущности, ссылающиеся на один или несколько объектов QLayer, добавленных в этот QLayerFilter
Qt3DRender::QLayerFilter::DiscardAllMatchingLayers 3 Отбрасываются сущности, ссылающиеся на все объекты QLayer, добавленные в этот QLayerFilter

Документация по свойствам

filterMode : FilterMode

Содержит режим фильтрации, определяющий сущности, которые нужно выбрать для отрисовки.

Значение по умолчанию — AcceptMatchingLayers.

Функции доступа:

Qt3DRender::QLayerFilter::FilterMode filterMode() const
void setFilterMode(Qt3DRender::QLayerFilter::FilterMode filterMode)

Сигнал уведомления:

void filterModeChanged(Qt3DRender::QLayerFilter::FilterMode filterMode)

Документация по функциям-членам

QLayerFilter::QLayerFilter(Qt3DCore::QNode *parent = nullptr)

Конструктор создаёт экземпляр с указанным parent.

void QLayerFilter::addLayer(Qt3DRender::QLayer *layer)

Добавляет layer в текущий список слоев.

QList<Qt3DRender::QLayer *> QLayerFilter::layers() const

Возвращает текущий список слоев.

void QLayerFilter::removeLayer(Qt3DRender::QLayer *layer)

Удаляет layer из текущего списка слоев.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qt3drender-qlayerfilter.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API