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 相关文章推荐
举例讲解Python设计模式编程中的访问者与观察者模式
Jan 26 Python
Python的GUI框架PySide的安装配置教程
Feb 16 Python
Python批量修改文本文件内容的方法
Apr 29 Python
python Pandas 读取txt表格的实例
Apr 29 Python
基于python的图片修复程序(实现水印去除)
Jun 04 Python
python turtle库画一个方格和圆实例
Jun 27 Python
Python 仅获取响应头, 不获取实体的实例
Aug 21 Python
Python学习笔记之列表和成员运算符及列表相关方法详解
Aug 22 Python
python实现最大优先队列
Aug 29 Python
python做接口测试的必要性
Nov 20 Python
python实现图片素描效果
Sep 26 Python
python时间time模块处理大全
Oct 25 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
php里array_work用法实例分析
2015/07/13 PHP
详解php中反射的应用
2016/03/15 PHP
PHP实现的统计数据功能详解
2016/12/06 PHP
javascript中关于break,continue的特殊用法与介绍
2012/05/24 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐)
2016/06/23 Javascript
JavaScript SHA1加密算法实现详细代码
2016/10/06 Javascript
Vue.js:使用Vue-Router 2实现路由功能介绍
2017/02/22 Javascript
jQuery.form.js的使用详解
2017/06/14 jQuery
详解vue渲染从后台获取的json数据
2017/07/06 Javascript
用JS编写一个函数,返回数组中重复出现过的元素(实例)
2017/09/14 Javascript
webpack 打包压缩js和css的方法示例
2018/03/20 Javascript
nodejs express配置自签名https服务器的方法
2018/05/22 NodeJs
Vue 组件复用多次自定义参数操作
2020/07/27 Javascript
vue 如何从单页应用改造成多页应用
2020/10/23 Javascript
Python用GET方法上传文件
2015/03/10 Python
详解Python中break语句的用法
2015/05/14 Python
python+selenium开发环境搭建图文教程
2017/08/11 Python
Flask框架URL管理操作示例【基于@app.route】
2018/07/23 Python
Django命名URL和反向解析URL实现解析
2019/08/09 Python
Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例
2019/09/29 Python
tensorflow 变长序列存储实例
2020/01/20 Python
解决python 执行sql语句时所传参数含有单引号的问题
2020/06/06 Python
python dict乱码如何解决
2020/06/07 Python
Python常用数字处理基本操作汇总
2020/09/10 Python
python3字符串输出常见面试题总结
2020/12/01 Python
香蕉共和国Banana Republic官网:美国GAP旗下偏贵族风格服饰品牌
2016/11/21 全球购物
美国轮胎网站:Priority Tire
2018/11/28 全球购物
纽约市的奢华内衣目的地:Anya Lust
2019/08/02 全球购物
自荐信不宜过于夸大
2013/11/06 职场文书
中学生在校期间的自我评价分享
2013/11/13 职场文书
人民调解员培训方案
2014/06/05 职场文书
2015年工商所工作总结
2015/05/21 职场文书
海底两万里读书笔记
2015/06/26 职场文书
采购部年度工作总结
2015/08/13 职场文书
七年级思品教学反思
2016/02/20 职场文书
总结一些Java常用的加密算法
2021/06/11 Java/Android