Sur cette page

Qt3DCore::QAbstractAspect Class

class Qt3DCore::QAbstractAspect

QAbstractAspect est la classe de base des aspects qui fournissent une tranche verticale de comportement. En savoir plus...

En-tête : #include <Qt3DCore/QAbstractAspect>
CMake : find_package(Qt6 REQUIRED COMPONENTS 3DCore)
target_link_libraries(mytarget PRIVATE Qt6::3DCore)
qmake : QT += 3dcore
Hérite de : QObject
Hérité par :

Qt3DAnimation::QAnimationAspect, Qt3DInput::QInputAspect, Qt3DLogic::QLogicAspect, et Qt3DRender::QRenderAspect

Statut : Obsolète

Cette classe est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.

Fonctions publiques

QAbstractAspect(QObject *parent = nullptr)

Fonctions protégées

void registerBackendType(const Qt3DCore::QBackendNodeMapperPtr &functor)
void registerBackendType(const QMetaObject &obj, const Qt3DCore::QBackendNodeMapperPtr &functor)
Qt3DCore::QNodeId rootEntityId() const

Macros

QT3D_REGISTER_ASPECT(name, AspectType)

Description détaillée

Documentation sur les fonctions membres

[explicit] QAbstractAspect::QAbstractAspect(QObject *parent = nullptr)

Crée un nouvel objet `QAbstractAspect` avec parent

[protected] template <typename Frontend> void QAbstractAspect::registerBackendType(const Qt3DCore::QBackendNodeMapperPtr &functor)

Enregistre le backend sur functor.

[protected] void QAbstractAspect::registerBackendType(const QMetaObject &obj, const Qt3DCore::QBackendNodeMapperPtr &functor)

Enregistre le backend sur obj et functor.

[noexcept protected] Qt3DCore::QNodeId QAbstractAspect::rootEntityId() const

Renvoie l'identifiant du nœud racine de l'entité.

Éléments non membres associés

QAspectJobPtr

Un pointeur partagé pour QAspectJob.

QBackendNodeMapperPtr

Un pointeur partagé pour QBackendNodeMapper.

Documentation des macros

QT3D_REGISTER_ASPECT(name, AspectType)

Macro pratique permettant d'enregistrer AspectType en vue de son instanciation par l'objet Qt3DCore::QAspectFactory actuellement défini. Cela permet de créer une instance de AspectType dans le thread d'aspect en transmettant ultérieurement name à Qt3DCore::QAspectEngine::registerAspect(const QString &name).

Remarque : il est également possible d’enregistrer un nouvel aspect sans utiliser cette macro, en utilisant à la place ` Qt3DCore::QAspectEngine::registerAspect` (`QAbstractAspect *aspect`), qui se chargera de déplacer une instance d’aspect précédemment créée vers le contexte du thread d’aspect.

KDAB a publié sur son blog plusieurs articles consacrés à l'écriture d'aspects Qt3D personnalisés. Ceux-ci constituent un excellent point de départ si vous souhaitez en savoir plus à ce sujet.

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