- ·上一篇文章:利用ellipse 和 rectangle 画图。。
- ·下一篇文章:输入3个数a,b,c,按大小顺序输出。
一个最优美的图案。
无。
程序源代码:
#!/usr/bin/python
# -*- coding:
UTF-8 -*-import mathclass PTS:
def __init__(self):
self.x = 0 self.y = 0points = []def LineToDemo():
from Tkinter import * screenx = 400 screeny = 400 canvas = Canvas(width = screenx,height = screeny,bg = 'white') AspectRatio = 0.85 MAXPTS = 15 h = screeny w = screenx xcenter = w / 2 ycenter = h / 2 radius = (h - 30) / (AspectRatio * 2) - 20 step = 360 / MAXPTS angle = 0.0 for i in range(MAXPTS):
rads = angle * math.pi / 180.0 p = PTS() p.x = xcenter + int(math.cos(rads) * radius) p.y = ycenter - int(math.sin(rads) * radius * AspectRatio) angle += step points.append(p) canvas.create_oval(xcenter - radius,ycenter - radius, xcenter + radius,ycenter + radius) for i in range(MAXPTS):
for j in range(i,MAXPTS):
canvas.create_line(points[i].x,points[i].y,points[j].x,points[j].y) canvas.pack() mainloop()if __name__ == '__main__':
LineToDemo()
一个最优美的图案。