Python编写万花尺图案实例


Posted in Python onJanuary 03, 2021

小的时候大家应该都玩过万花尺,将笔尖放置万花尺内不停的转动,便可以画出一幅精致的线稿图,现在我们不用万花尺,我们通过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编写万花尺图案实例的文章就介绍到这了,更多相关Python之万花尺图案内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
使用django-suit为django 1.7 admin后台添加模板
Nov 18 Python
Python实现的简单算术游戏实例
May 26 Python
Python生成密码库功能示例
May 23 Python
python list是否包含另一个list所有元素的实例
May 04 Python
python3.X 抓取火车票信息【修正版】
Jun 19 Python
基于OpenCV python3实现证件照换背景的方法
Mar 22 Python
Python的几种主动结束程序方式
Nov 22 Python
Python 为什么推荐蛇形命名法原因浅析
Jun 18 Python
Django视图、传参和forms验证操作
Jul 15 Python
python如何变换环境
Jul 21 Python
运行python提示no module named sklearn的解决方法
Nov 29 Python
Python爬虫之自动爬取某车之家各车销售数据
Jun 02 Python
Python 实现一个简单的web服务器
Jan 03 #Python
关于Python错误重试方法总结
Jan 03 #Python
详解python中的异常和文件读写
Jan 03 #Python
python绘制雷达图实例讲解
Jan 03 #Python
python 使用xlsxwriter循环向excel中插入数据和图片的操作
Jan 01 #Python
python安装mysql的依赖包mysql-python操作
Jan 01 #Python
python UDF 实现对csv批量md5加密操作
Jan 01 #Python
You might like
全国FM电台频率大全 - 31 新疆维吾尔族自治区
2020/03/11 无线电
php上传图片类及用法示例
2016/05/11 PHP
PHP简单验证码功能机制实例详解
2019/03/27 PHP
一个不错的用JavaScript实现的UBB编码函数
2007/03/09 Javascript
js 函数的副作用分析
2011/08/23 Javascript
contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
2011/09/13 Javascript
javascript获取作用在元素上面的样式属性代码
2012/09/20 Javascript
jquery的ajax()函数传值中文乱码解决方法介绍
2012/11/08 Javascript
jquery ajax传递中文参数乱码问题及解决方法说明
2014/02/07 Javascript
jquery跨域请求示例分享(jquery发送ajax请求)
2014/03/25 Javascript
js中将String转换为number以便比较
2014/07/08 Javascript
JS实现动态给图片添加边框的方法
2015/04/01 Javascript
jquery trigger函数执行两次的解决方法
2016/02/29 Javascript
Node.js DES加密的简单实现
2016/07/07 Javascript
domReady的实现案例
2016/11/23 Javascript
jQuery+ajax实现批量删除功能完整示例
2019/06/06 jQuery
构建Vue大型应用的10个最佳实践(小结)
2019/11/07 Javascript
Vue数据双向绑定原理实例解析
2020/05/15 Javascript
JavaScript中layim之整合右键菜单的示例代码
2021/02/06 Javascript
Python help()函数用法详解
2014/03/11 Python
python 多线程实现检测服务器在线情况
2015/11/25 Python
Python获取当前页面内所有链接的四种方法对比分析
2017/08/19 Python
Python文件读写保存操作的示例代码
2018/09/14 Python
解决python有时候import不了当前的包问题
2019/08/28 Python
python中enumerate() 与zip()函数的使用比较实例分析
2019/09/03 Python
详解java调用python的几种用法(看这篇就够了)
2020/12/10 Python
python 递归相关知识总结
2021/03/03 Python
CSS3中31种选择器使用方法教程
2013/12/05 HTML / CSS
美国一家专业的太阳镜网上零售商:Solstice太阳镜
2016/07/25 全球购物
英国领先的露营和露营车品牌之一:OLPRO
2019/08/06 全球购物
医院保洁服务方案
2014/06/11 职场文书
消防宣传口号
2014/06/16 职场文书
2015年上半年党建工作总结
2015/03/30 职场文书
六一活动主持词
2015/06/30 职场文书
投诉信回复范文
2015/07/03 职场文书
Java基于Dijkstra算法实现校园导游程序
2022/03/17 Java/Android