我是Qt的新人。 我正在尝试将纹理添加到示例项目“basicshapes”中,该项目来自Qt Creator演示。 它用C ++编写,是完美的,因为这是我的需要。 使用的类如:
div.items div.item:nth-child(n+51) {
background: yellow;
}
和其他许多人 但我无法意识到如何为它添加纹理。 有一个片段:
Qt3D::QTransform
Qt3D::QSphereMesh
Qt3D::QPhongMaterial
所以我试图添加:
Qt3D::QPhongMaterial *sphereMaterial = new Qt3D::QPhongMaterial();
sphereMaterial->setDiffuse(QColor(QRgb(0xa69929)));
在我从抽象类派生之前:
MyTextureImage *t = new MyTextureImage();
MyTextureProvider *x = new MyTextureProvider();
x->addTextureImage(t);
sphereMaterial->setTextureParameter("SphereTexture", x);
但我收到了错误:
class MyTextureProvider : public Qt3D::QAbstractTextureProvider { };
class MyTextureImage : public Qt3D::QAbstractTextureImage { };
答案 0 :(得分:0)
我不是Qt的专家,但是通过查看编译器错误,您需要覆盖doClone方法,因为它被限定为纯虚拟。
有关编译器错误的更多信息,请访问MSDN:https://msdn.microsoft.com/en-us/library/zxt206sk.aspx
我希望这会有所帮助。