QScene2D Class
(Qt3DRender::Quick::QScene2D)This class enables rendering qml into a texture, which then can be used as a part of 3D scene. 更多...
头文件: | #include <QScene2D> |
qmake: | QT += 3dquickscene2d |
开始支持版本: | Qt 5.9 |
Instantiated By: | Scene2D |
基类: | Qt3DCore::QNode |
公有类型
enum | RenderPolicy { Continuous, SingleShot } |
属性
- item : QQuickItem *
- mouseEnabled : bool
- output : Qt3DRender::QRenderTargetOutput *
- renderPolicy : QScene2D::RenderPolicy
- 3 个属性继承自 Qt3DCore::QNode
- 1 个属性继承自 QObject
公有函数
QScene2D(Qt3DCore::QNode *parent = nullptr) | |
void | addEntity(Qt3DCore::QEntity *entity) |
QVector<Qt3DCore::QEntity *> | entities() |
bool | isMouseEnabled() const |
QQuickItem * | item() const |
Qt3DRender::QRenderTargetOutput * | output() const |
void | removeEntity(Qt3DCore::QEntity *entity) |
QScene2D::RenderPolicy | renderPolicy() const |
- 11 个公有函数继承自 Qt3DCore::QNode
- 32 个公有函数继承自 QObject
公有槽函数
void | setItem(QQuickItem *item) |
void | setMouseEnabled(bool enabled) |
void | setOutput(Qt3DRender::QRenderTargetOutput *output) |
void | setRenderPolicy(QScene2D::RenderPolicy policy) |
- 3 个公有槽函数继承自 Qt3DCore::QNode
- 1 个公有槽函数继承自 QObject
信号
void | itemChanged(QQuickItem *item) |
void | mouseEnabledChanged(bool enabled) |
void | outputChanged(Qt3DRender::QRenderTargetOutput *output) |
void | renderPolicyChanged(QScene2D::RenderPolicy policy) |
- 4 个信号继承自 Qt3DCore::QNode
- 2 个信号继承自 QObject
其他继承的成员
- 1 个公有变量继承自 QObject
- 10 个静态公有成员继承自 QObject
- 2 个受保护的函数继承自 Qt3DCore::QNode
- 9 个受保护的函数继承自 QObject
- 2 个受保护的变量继承自 QObject
详细描述
This class enables rendering qml into a texture, which then can be used as a part of 3D scene.
This class uses QQuickRenderControl to render the given QQuickItem into an offscreen surface, which is attached to a texture provided by the user. This allows the component to directly render into the texture without intermediate copy and the user to freely specify how the texture is used in the 3D scene.
The entities using the QScene2D can be associated with the class to enable interaction with the item; if an entity has a QObjectPicker component, the pick events from that picker are sent to the QScene2D and converted to mouse events and finally sent to the item.
属性
item : QQuickItem *
Holds the QQuickItem, which is rendered by QScene2D to the texture.
访问函数:
QQuickItem * | item() const |
void | setItem(QQuickItem *item) |
Notifier signal:
void | itemChanged(QQuickItem *item) |
mouseEnabled : bool
Holds whether mouse events are enabled for the rendered item. The mouse events are generated from object picking events of the entities added to the QScene2D. Mouse is enabled by default.
Note: Events are delayed by one frame due to object picking happening in the backend.
访问函数:
bool | isMouseEnabled() const |
void | setMouseEnabled(bool enabled) |
Notifier signal:
void | mouseEnabledChanged(bool enabled) |
output : Qt3DRender::QRenderTargetOutput *
Holds the QRenderTargetOutput, which specifies where the QScene2D is rendering to.
访问函数:
Qt3DRender::QRenderTargetOutput * | output() const |
void | setOutput(Qt3DRender::QRenderTargetOutput *output) |
Notifier signal:
void | outputChanged(Qt3DRender::QRenderTargetOutput *output) |
renderPolicy : QScene2D::RenderPolicy
Holds the render policy of this Scene2D.
访问函数:
QScene2D::RenderPolicy | renderPolicy() const |
void | setRenderPolicy(QScene2D::RenderPolicy policy) |
Notifier signal:
void | renderPolicyChanged(QScene2D::RenderPolicy policy) |
成员函数
QScene2D::QScene2D(Qt3DCore::QNode *parent = nullptr)
The constructor creates a new QScene2D instance with the specified parent.
void QScene2D::addEntity(Qt3DCore::QEntity *entity)
Adds an entity to the the QScene2D object. If the entities have QObjectPicker, the pick events from that entity are sent to QScene2D and converted to mouse events.
QVector<Qt3DCore::QEntity *> QScene2D::entities()
Retrieve entities associated with the QScene2D.
void QScene2D::removeEntity(Qt3DCore::QEntity *entity)
Removes an entity from the the QScene2D object.