一个最优美的图案。
1 #! /usr/bin/env python
2 # -*- coding:utf-8 -*-
3 '''一个最优美的图案。'''
4
5 import math
6 class PTS:
7 def __init__(self):
8 self.x = 0
9 self.y = 0
10 points = []
11 from tkinter import *
12 def LineToDemo():
13
14 screenx = 400
15 screeny = 400
16 canvas = Canvas(width = screenx,height = screeny,bg = 'white')
17
18 AspectRatio = 0.85
19 MAXPTS = 15
20 h = screeny
21 w = screenx
22 xcenter = w / 2
23 ycenter = h / 2
24 radius = (h - 30) / (AspectRatio * 2) - 20
25 step = 360 / MAXPTS
26 angle = 0.0
27 for i in range(MAXPTS):
28 rads = angle * math.pi / 180.0
29 p = PTS()
30 p.x = xcenter + int(math.cos(rads) * radius)
31 p.y = ycenter - int(math.sin(rads) * radius * AspectRatio)
32 angle += step
33 points.append(p)
34 canvas.create_oval(xcenter - radius,ycenter - radius,
35 xcenter + radius,ycenter + radius)
36 for i in range(MAXPTS):
37 for j in range(i,MAXPTS):
38 canvas.create_line(points[i].x,points[i].y,points[j].x,points[j].y)
39
40 canvas.pack()
41 mainloop()
42 if __name__ == '__main__':
43 LineToDemo()