Spec-Zone.ru › Qt

Класс QScene2D

класс Qt3DRender::Quick::QScene2D

Этот класс позволяет рендерить QML в текстуру, которая затем может быть использована как часть 3D сцены. Подробнее...

Заголовок: #include <Qt3DQuickScene2D/QScene2D>
CMake: find_package(Qt6 COMPONENTS 3dquickscene2d REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3dquickscene2d)
qmake: QT += 3dquickscene2d
С момента: Qt 5.9
Инициализируется: Scene2D
Наследует: Qt3DCore::QNode
  • Список всех членов, включая унаследованные

Типы Public

Перечисление RenderPolicy { Continuous, SingleShot }

Свойства

  • item : QQuickItem*
  • mouseEnabled : bool
  • output : Qt3DRender::QRenderTargetOutput*
  • renderPolicy : RenderPolicy

Public Функции

QScene2D(Qt3DCore::QNode *parent = nullptr)
void addEntity(Qt3DCore::QEntity *entity)
QList<Qt3DCore::QEntity *> entities() const
bool isMouseEnabled() const
QQuickItem * item() const
Qt3DRender::QRenderTargetOutput * output() const
void removeEntity(Qt3DCore::QEntity *entity)
QScene2D::RenderPolicy renderPolicy() const

Public Слот

void setItem(QQuickItem *item)
void setMouseEnabled(bool enabled)
void setOutput(Qt3DRender::QRenderTargetOutput *output)
void setRenderPolicy(QScene2D::RenderPolicy policy)

Сигналы

void itemChanged(QQuickItem *item)
void mouseEnabledChanged(bool enabled)
void outputChanged(Qt3DRender::QRenderTargetOutput *output)
void renderPolicyChanged(QScene2D::RenderPolicy policy)

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

Этот класс использует QQuickRenderControl для рендеринга заданного QQuickItem в офскрин-поверхность, которая прикрепляется к текстуре, предоставленной пользователем. Это позволяет компоненту напрямую рендерить в текстуру без промежуточной копии, и пользователю свободно указать, как текстура используется в 3D сцене.

Сущности, использующие QScene2D, могут быть связаны с классом для обеспечения взаимодействия с элементом; если сущность имеет компонент QObjectPicker, события выбора от этого пикера отправляются в QScene2D и преобразуются в события мыши, которые, в свою очередь, отправляются элементу.

Примечание: Поддерживаются только события мыши. Элемент не поддерживает ввод с клавиатуры.

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

Перечисление QScene2D::RenderPolicy

Это перечисление описывает типы политик рендеринга, доступные для использования.

Постоянная Значение Описание
Qt3DRender::Quick::QScene2D::Continuous 0 QScene2D рендерится непрерывно. Это политика рендеринга по умолчанию.
Qt3DRender::Quick::QScene2D::SingleShot 1 QScene2D рендерит в текстуру только один раз, после чего ресурсы, выделенные для рендеринга, освобождаются.

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

item : QQuickItem*

Содержит QQuickItem, который отрисовывается QScene2D на текстуре.

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

QQuickItem * item() const
void setItem(QQuickItem *item)

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

void itemChanged(QQuickItem *item)

mouseEnabled : bool

Указывает, разрешены ли события мыши для отрисовываемого элемента. События мыши генерируются из событий выбора объектов сущностей, добавленных в QScene2D. События мыши разрешены по умолчанию.

Примечание: События задерживаются на один кадр из-за того, что выбор объектов происходит в фоновом режиме.

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

bool isMouseEnabled() const
void setMouseEnabled(bool enabled)

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

void mouseEnabledChanged(bool enabled)

output : Qt3DRender::QRenderTargetOutput*

Содержит QRenderTargetOutput, который определяет, куда QScene2D производит отрисовку.

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

Qt3DRender::QRenderTargetOutput * output() const
void setOutput(Qt3DRender::QRenderTargetOutput *output)

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

void outputChanged(Qt3DRender::QRenderTargetOutput *output)

renderPolicy : RenderPolicy

Содержит политику отрисовки данного Scene2D.

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

QScene2D::RenderPolicy renderPolicy() const
void setRenderPolicy(QScene2D::RenderPolicy policy)

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

void renderPolicyChanged(QScene2D::RenderPolicy policy)

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

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

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

void QScene2D::addEntity(Qt3DCore::QEntity *entity)

Добавляет entity в объект QScene2D. Если у сущностей есть QObjectPicker, события выбора из этой сущности отправляются в QScene2D и преобразуются в события мыши.

QList<Qt3DCore::QEntity *> QScene2D::entities() const

Возвращает сущности, связанные с QScene2D.

void QScene2D::removeEntity(Qt3DCore::QEntity *entity)

Удаляет entity из объекта QScene2D.

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

Spec-Zone.ru

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