0

我正在研究带有 LCD 屏幕的微处理器,并且正在编写随机显示一些精灵的代码。

void setup_sprite() {

Sprite sprite[8];
Sprite * sprite_pointer = &sprite;
byte sprite_bitmap [] = {
BYTE( 10100000 ),
BYTE( 01000000 ),
BYTE( 10100000 )
};
const int width = 3;
const int height = 3;

for (int i = 0; i < 8; i++) {
    init_sprite(&sprite, rand()%82, rand()%43, 3, 3, sprite_bitmap);//83/43 is the LCD screen dimensions
    draw_sprite(&sprite);
    refresh();
    }
return 0;
}

我将如何在可以绘制的地方设置边界?它应该只在屏幕上的特定区域内绘制。我在想一个 if 语句,如果精灵被绘制在边界之外,它会重新绘制,直到它是正确的。

具体来说,问题是我在屏幕左侧有大约 10 个像素用于菜单,不应在该区域绘制精灵。

4

1 回答 1

0

自从

rand() % 82

生成一个介于 0 和 81 之间的随机值,您可以将其修改为

10 + rand() % 72

而是生成一个介于 10 和 81 之间的随机值,我相信这就是你想要的 x 坐标。

于 2015-05-15T02:34:58.963 回答