1.利用Python的tkinter画一个五角星;
2.做一个简单的动画

分析五角心的五个顶点的坐标:
确立五角星的中心点和半径,再确立五角星的五个角的坐标信息,其中五角星的各个角读书为36度,具体的计算看图所示

Python GUI 编程tkinter--画五角星和简单的动画制作-LMLPHP
代码如下所示:

# coding:utf-8
# 画五角星
from tkinter import *
import math

base=Tk()
canvas=Canvas(base,width=300,height=300,background='grey')
canvas.pack()

# 五角星的中心点
center_x=150
center_y=150
r=150 # 中心点距离每个角的距离,称为半径

# 依次存放五角星的五个点的位置
points=[
    # 左上点
    center_x-int(r*math.sin(2*math.pi/5)),
    center_y-int(r*math.cos(2*math.pi/5)),

    # 右上点
    center_x+int(r*math.sin(2*math.pi/5)),
    center_y-int(r*math.cos(2*math.pi/5)),

    # 左下点
    center_x-int(r*math.sin(math.pi/5)),
    center_y+int(r*math.cos(math.pi/5)),

    # 顶点
    center_x,
    center_y-r,

    # 右下点
    center_x+int(r*math.sin(math.pi/5)),
    center_y+int(r*math.cos(math.pi/5)),
]
# 根据十个顶点创建一个多边形
canvas.create_polygon(points,outline='green',fill='yellow')
# 在中心点处画’五角星‘三个字
canvas.create_text(150,150,text='五角星')
# 消息循环
base.mainloop()
10-03 19:42