首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法将Qt3DCore::Quick3DEntity分配给QQmlComponent

无法将Qt3DCore::Quick3DEntity分配给QQmlComponent
EN

Stack Overflow用户
提问于 2020-11-23 09:42:04
回答 1查看 180关注 0票数 0

试图向自定义Qt3D实体添加类似委托的属性:

MyEntity.qml:

代码语言:javascript
复制
Entity {
    id: root
    default property Entity delegate // <-- MyEntity.qml:26
    property int n: 1
    property matrix4x4 t

    NodeInstantiator {
        id: rep
        model: root.n
        delegate: Entity {
            components: [
                Transform {
                    matrix: {
                        var m = root.t
                        for(var i = 1; i < rep.index; i++)
                            m = m.times(root.t)
                        return m
                    }
                }
            ]
            NodeInstantiator {
                delegate: root.delegate
            }
        }
    }
}

用法:

代码语言:javascript
复制
MyEntity {
    t: Qt.matrix4x4(
           1, 0, 0, 0.1,
           0, 1, 0, 0,
           0, 0, 1, 0,
           0, 0, 0, 1
    )
    n: 5
    Entity {...}
}

结果:

qrc:/MyEntity.qml:26:17:无法分配Qt3DCore::QQmlComponent::Quick3DEntity

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-23 12:28:07

财产申报:

代码语言:javascript
复制
default property Entity delegate

必须改为:

代码语言:javascript
复制
default property Component delegate

才能正常工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64965937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档