En esta página

Qt3DRender::Quick::QScene2D Class

class Qt3DRender::Quick::QScene2D

Esta clase permite renderizar qml en una textura, que luego puede ser utilizada como parte de una escena 3D. Más...

Cabecera: #include <Qt3DQuickScene2D/QScene2D>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3dquickscene2d)
target_link_libraries(mytarget PRIVATE Qt6::3dquickscene2d)
qmake: QT += 3dquickscene2d
En QML: Scene2D
Hereda: Qt3DCore::QNode
Status: Obsoleto

Tipos públicos

enum RenderPolicy { Continuous, SingleShot }

Propiedades

Funciones públicas

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)
Qt3DRender::Quick::QScene2D::RenderPolicy renderPolicy() const

Ranuras públicas

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

Señales

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

Descripción Detallada

Esta clase utiliza QQuickRenderControl para renderizar el QQuickItem dado en una superficie fuera de la pantalla, que se adjunta a una textura proporcionada por el usuario. Esto permite al componente renderizar directamente en la textura sin copia intermedia y al usuario especificar libremente cómo se utiliza la textura en la escena 3D.

Las entidades que utilizan el QScene2D pueden asociarse a la clase para permitir la interacción con el ítem; si una entidad tiene un componente QObjectPicker, los eventos de picker de ese picker se envían al QScene2D y se convierten en eventos de ratón y finalmente se envían al ítem.

Nota: Sólo se admiten eventos de ratón. El ítem no soporta entradas de teclado.

Documentación de tipos de miembros

enum QScene2D::RenderPolicy

Este tipo enum describe los tipos de políticas de renderizado disponibles.

ConstanteValorDescripción
Qt3DRender::Quick::QScene2D::Continuous0Scene2D renderiza de forma continua. Esta es la política de renderizado por defecto.
Qt3DRender::Quick::QScene2D::SingleShot1El Scene2D renderiza a la textura sólo una vez después de lo cual los recursos asignados para el renderizado son liberados.

Documentación de la propiedad

item : QQuickItem*

Contiene el QQuickItem, que se renderiza mediante QScene2D a la textura.

Funciones de acceso:

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

Señal notificadora:

void itemChanged(QQuickItem *item)

mouseEnabled : bool

Indica si los eventos de ratón están habilitados para el elemento renderizado. Los eventos de ratón se generan a partir de los eventos de recogida de objetos de las entidades añadidas a QScene2D. El ratón está activado por defecto.

Nota: Los eventos se retrasan un fotograma debido a que la recogida de objetos se realiza en el backend.

Funciones de acceso:

bool isMouseEnabled() const
void setMouseEnabled(bool enabled)

Señal de notificador:

void mouseEnabledChanged(bool enabled)

output : Qt3DRender::QRenderTargetOutput*

Contiene la dirección QRenderTargetOutput, que especifica hacia dónde se renderiza QScene2D.

Funciones de acceso:

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

Señal del notificador:

void outputChanged(Qt3DRender::QRenderTargetOutput *output)

renderPolicy : RenderPolicy

Contiene la política de renderizado de este Scene2D.

Funciones de acceso:

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

Señal del notificador:

void renderPolicyChanged(Qt3DRender::Quick::QScene2D::RenderPolicy policy)

Documentación de la función miembro

[explicit] QScene2D::QScene2D(Qt3DCore::QNode *parent = nullptr)

El constructor crea una nueva instancia de QScene2D con la dirección parent especificada.

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

Añade un entity al objeto QScene2D. Si las entidades tienen QObjectPicker, los eventos de selección de esa entidad se envían a QScene2D y se convierten en eventos de ratón.

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

Recuperar entidades asociadas a QScene2D.

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

Elimina un entity del objeto QScene2D.

© 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.