QEntity 类
class Qt3DCore::QEntityQt3DCore::QEntity 是一个 Qt3DCore::QNode 子类,可以聚合多个 Qt3DCore::QComponent 实例来指定其行为。 更多...
头文件 | #include <QEntity> |
CMake | find_package(Qt6 REQUIRED COMPONENTS 3DCore) target_link_libraries(mytarget PRIVATE Qt6::3DCore) |
qmake | QT += 3dcore |
实例化自 | 实体 |
继承自 | Qt3DCore::QNode |
继承自 | Qt3DExtras::QAbstractCameraController, Qt3DExtras::QSkyboxEntity, Qt3DExtras::QText2DEntity, 和 Qt3DRender::QCamera |
公共函数
QEntity(Qt3DCore::QNode *parent = nullptr) | |
void | addComponent(Qt3DCore::QComponent *comp) |
Qt3DCore::QComponentVector | components() const |
QList<T *> | componentsOfType() const |
Qt3DCore::QEntity * | parentEntity() const |
void | removeComponent(Qt3DCore::QComponent *comp) |
相关的非成员函数
详细描述
作为一个简单的 Qt3DCore::QEntity 只是空的壳子。 Qt3DCore::QEntity 对象的行为由它引用的 Qt3DCore::QComponent 对象定义。每个 Qt3D 后端方面都将能够通过识别它由哪些组件组成来解释和处理 Entity。一个方面可能只处理由单个 Qt3DCore::QTransform 组件组成的实体,而另一方面可能专注于 Qt3DInput::QMouseHandler。
另请参阅 Qt3DCore::QComponent 和 Qt3DCore::QTransform。
成员函数说明
[显式]
QEntity::QEntity(Qt3DCore::QNode *parent = nullptr)
以 parent 作为父对象构建一个新的 Qt3DCore::QEntity 实例。
void QEntity::addComponent(Qt3DCore::QComponent *comp)
向组件 comp 添加一个新的引用。
注意:如果 Qt3DCore::QComponent 没有父组件,则 Qt3DCore::QEntity 将自己设置为它的父组件,从而拥有该组件。
Qt3DCore::QComponentVector QEntity::components() const
返回该实体引用的 Qt3DCore::QComponent 实例列表。
template <typename T> QList<T *> QEntity::componentsOfType() const
返回添加到此实体的所有可以转换为类型 T 的组件,如果没有这样的组件,则返回空向量。
Qt3DCore::QEntity *QEntity::parentEntity() const
返回此实体的父 Qt3DCore::QEntity 实例。如果直接父组件不是一个 Qt3DCore::QEntity,则此函数将遍历场景层次结构,直到找到一个父 Qt3DCore::QEntity。如果没有找到父 Qt3DCore::QEntity,则返回 null。
void QEntity::removeComponent(Qt3DCore::QComponent *comp)
删除对 comp 的引用。
© 2024 The Qt Company Ltd. 本文档中的贡献是非专利权拥有者的版权。提供的文档是在自由软件基金会发布并由其发布的 GNU 自由文档许可证版本 1.3 条件下允许的。Qt 和相应的徽标是 The Qt Company Ltd. 在芬兰和/或世界其他国家的商标。所有其他商标均为其各自所有者的财产。