Python实现8x8 LED矩阵字符循环移动动画方案咨询
8x8 LED矩阵字符动画实现问题求助
我最近在写Python脚本控制8x8 LED矩阵,碰到了个实现字符动画效果的问题,想请教下大家!我希望能让矩阵上的字符实现从右到左、从左到右、从上到下、从下到上的移动动画。
已完成的基础工作
我先为字母E创建了对应的8x8矩阵数据:
matrix = [ "1","1","1","1","1","1","1","1", "1","1","1","1","1","1","1","1", "1","1","0","0","0","0","0","0", "1","1","1","1","1","0","0","0", "1","1","1","1","1","0","0","0", "1","1","0","0","0","0","0","0", "1","1","1","1","1","1","1","1", "1","1","1","1","1","1","1","1" ]
对应的字母E显示效果:
具体动画需求
我想实现字母E的移动动画,比如向左移动时:
- 先让第八列变为空白
- 间隔1秒后第七列也变为空白,以此类推
- 等整个矩阵完全空白后,字母E从右侧重新出现
想请教下,怎么利用数组、矩阵这类数据结构来实现这个效果?
附测试代码
我写了一段测试代码,用来尝试左移逻辑,大家可以参考:
matrix = [ [0, 0, 0, 1, 0], [0, 0, 0, 1, 0], [0, 0, 0, 1, 0], [0, 0, 0, 1, 0], [0, 0, 0, 1, 0] ] print(matrix) def shift(my2dArray): for _ in range(5): # 尝试左移5次 for row in my2dArray: row.pop(0) # 删除每行的第一个元素 row.append("0") # 在每行末尾添加"0"作为空白 # 这里应该添加更新显示和延时的代码 shift(matrix) print(matrix)
内容的提问来源于stack exchange,提问作者Naografix
相关产品推荐
相关产品推荐

