如何在可以在 LCD 上绘制精灵的区域设置边界
How to place boundaries on the area a sprite can be drawn on an LCD
我正在研究带有 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 个像素用于菜单,不应该在该区域绘制精灵。
从
开始
rand() % 82
生成0到81之间的随机值,你可以修改为
10 + rand() % 72
生成一个介于 10 和 81 之间的随机值,我相信这就是您想要的 x 坐标。
我正在研究带有 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 个像素用于菜单,不应该在该区域绘制精灵。
从
开始rand() % 82
生成0到81之间的随机值,你可以修改为
10 + rand() % 72
生成一个介于 10 和 81 之间的随机值,我相信这就是您想要的 x 坐标。