在QT中创建前景背景数组

Creating foreground background array in QT

本文关键字:背景 数组 创建 QT      更新时间:2023-10-16

我在创建一个数组时遇到了问题,该数组为我提供了关于彼此绘制的两个图像的信息。

我有一张作为背景(大海)和一张作为前景(风景)的图像,风景没有大海那么大,所以当画在一起时,你可以看到大海和上面的风景。

现在,我想制作一个数组,如果是大海,则为0,如果是风景,则为1。所以我可以该阵列稍后进行一些碰撞检测。问题是我不知道如何从中生成字节数组。off图像的长度*宽度。

我在QImage中有这两个图像,但我不知道如何用for循环或其他东西创建数组。

这两幅图像都是通过QPainter功能绘制在一起的。

有人能帮我吗?

亲切问候,

如果使用QPainter类在彼此上绘制两个图像,则会丢失有关它们的任何信息,它们现在只是图形。你必须创建方法和对象来实现你的学校项目。我知道您不能使用QGraphicsView,但您需要查看QGraphicsView的工作方式,以便了解如何实现自己的碰撞系统。

1-您需要将图形(所有图形)的"重定角度"保存在某个位置。QList就可以了。

2-你也需要你的图纸的位置,这样你就知道它们在哪里,除了重新标注。

有了位置和矩形,你所需要做的就是检查一个矩形是否与另一个相交。

我用了两个forloop,并使用黑色和蓝色来确定前景色和背景。所以我只能用黑色和蓝色。