QGraphicsItemGroup到OpenGL纹理

奥雷利亚人

我正在使用在QGraphicsItemGroup中使用地图图块渲染地图的应用程序,我想切换到OpenGL,以便可以在地图上添加3D形状。

为了尽可能平稳地执行此操作,我需要从此QGraphicsItemGroup中获取纹理。

奥雷利亚人

万一有人遇到这个问题,我设法得到可以合作的东西。我没有使用QGraphicsItemGroup,而是采用了整个场景,并从中制作了一个用作纹理的图像。

代码提取:(地图是我的QGraphicsScene)

    QImage img(ui->map->width(), ui->map->height(),QImage::Format_ARGB32_Premultiplied);
    QPainter p(&img);
    ui->map->fitInView(0,0,scene.width(),scene.height(),Qt::IgnoreAspectRatio);
    ui->map->viewport()->render(&p);
    p.end();
    img.save("tmp.png");

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章