仿射变换动画模拟与矩阵向量基础
仿射变换动画模拟
在完成输入解析后,我们开始着手实现仿射变换的动画模拟。下面将详细介绍实现过程。
运行模拟
当配置和输入被完全读取并解析后,它们会被传递给一个模拟函数。这个函数将定义用户界面,包括用于绘制形状的画布和用于启动动画的按钮。模拟不会在用户点击播放按钮之前开始,这样可以避免模拟过早开始,让用户不会错过动画的开头部分。而且,借助这个按钮,我们可以在不重新启动应用程序的情况下重新运行模拟。
构建用户界面
首先,打开空的 simulation.py
文件,并输入以下代码:
from tkinter import Tk, Canvas, Button
def simulate(transform, primitives, config):
# ---------- UI DEFINITION ---------- #
tk = Tk()
tk.title("Affine Transformations")
canvas = Canvas(tk, width=800, height=800)
canvas.grid(row=0, column=0)
def start_simulation():
tk.update()
print('Starting Simulation...')
Button(tk, text='Play', command=start_simulation) \