Python编写万花尺图案实例
更新时间:2021年01月03日 10:11:35 作者:zhimaHTTP
在本篇文章里小编给大家分享的是一篇关于Python编写万花尺图案实例的内容,有兴趣的朋友们可以参考下。
小的时候大家应该都玩过万花尺,将笔尖放置万花尺内不停的转动,便可以画出一幅精致的线稿图,现在我们不用万花尺,我们通过Python也能绘制出万花尺图案。
(一)代码
#!/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之万花尺图案内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
pandas基础 Series与Dataframe与numpy对二进制文件输入输出
这篇文章主要介绍了pandas基础Series与Dataframe与numpy对二进制文件输入输出,series是一种一维的数组型对象,它包含了一个值序列和一个数据标签2022-07-07selenium设置proxy、headers的方法(phantomjs、Chrome、Firefox)
这篇文章主要介绍了selenium设置proxy、headers的方法(phantomjs、Chrome、Firefox),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-11-11python使用requests.post方法传递form-data类型的Excel数据的示例代码
这篇文章介绍了python使用requests.post方法传递form-data类型的Excel数据的示例代码,某些post接口,需要发送multipart/form-data类型的数据,如何使用python requests来模拟这种类型的请求发送呢?补充讲解了python使用requests post请求发送form-data类型数据,一起看看吧2024-01-01
最新评论