
李兴球Python海龟Vec2D向量旋转线条
"""
用海龟模块的Vec2D向量旋转线条.py
本程序从海龟模块中导入了Vec2D向量,
用Tk实例化了一个窗口,然后创建了一根线条。
通过旋转向量,重新配置坐标,从而旋转了线条。
本程序为《Python海龟宝典》示例程序。
"""
import time
from tkinter import *
from turtle import Vec2D
root = Tk()
root.title("用Vec2D向量旋转线条示例")
canvas = Canvas(root,width=480,height=360,bg='#FFFFFF')
canvas.pack()
v1 = Vec2D(240,180) # 旋转中心点
v2 = Vec2D(340,180) # 端点
v = v2 - v1
line = canvas.create_line(240,180,340,180,fill='red',width=3)
while True:
v = v.rotate(1) # 向右旋转向量一度
v2 = v1 + v # 重新计算端点
canvas.coords(line,(240,180,v2[0],v2[1]))
canvas.update() # 更新画布显示
time.sleep(0.01) # 等待0.01秒
发表评论