服务器之家

服务器之家 > 正文

Python编写万花尺图案实例

时间:2021-08-20 00:45     来源/作者:zhimaHTTP

小的时候大家应该都玩过万花尺,将笔尖放置万花尺内不停的转动,便可以画出一幅精致的线稿图,现在我们不用万花尺,我们通过python也能绘制出万花尺图案。

(一)代码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/usr/bin/python# -*- coding: utf-8 - *-
import mathclass pts:
def __ init __(self):
self.x = 0
self.y = 0
points = []
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()

(二)实现结果

Python编写万花尺图案实例

我们还可以通过修改不同的参数来实现不同的图案转化,大家可以多试试,做出多种不同的效果图。

到此这篇关于python编写万花尺图案实例的文章就介绍到这了,更多相关python之万花尺图案内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/zhimaHTTP/article/details/111406131

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部