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抓取最新博客内容并生成Rss
May 17 Python
python实现Adapter模式实例代码
Feb 09 Python
Python3爬虫学习之爬虫利器Beautiful Soup用法分析
Dec 12 Python
对python中GUI,Label和Button的实例详解
Jun 27 Python
Python对接支付宝支付自实现功能
Oct 10 Python
win10子系统python开发环境准备及kenlm和nltk的使用教程
Oct 14 Python
python pandas利用fillna方法实现部分自动填充功能
Mar 16 Python
django执行数据库查询之后实现返回的结果集转json
Mar 31 Python
Python使用多进程运行含有任意个参数的函数
May 02 Python
python如何删除文件、目录
Jun 23 Python
pytorch查看网络参数显存占用量等操作
May 12 Python
5行Python代码实现一键批量扣图
Jun 29 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获取QQ头像并显示的方法
2014/12/23 PHP
PHP中数据类型转换的三种方式
2015/04/02 PHP
php生成gif动画的方法
2015/11/05 PHP
初识ThinkPHP控制器
2016/04/07 PHP
php 读取输出其他文件的实现方法
2016/07/26 PHP
PHP+mysql防止SQL注入的方法小结
2019/04/27 PHP
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
2010/02/07 Javascript
JavaScript中使用正则匹配多条,且获取每条中的分组数据
2010/11/30 Javascript
jquery仿京东导航/仿淘宝商城左侧分类导航下拉菜单效果
2013/04/24 Javascript
js中创建对象的几种方式示例介绍
2014/01/26 Javascript
node.js中的fs.unlink方法使用说明
2014/12/15 Javascript
js 获取元素在页面上的偏移量的方法汇总
2015/04/13 Javascript
JS如何实现文本框随文本的长度而增长
2015/07/30 Javascript
学习使用AngularJS文件上传控件
2016/02/16 Javascript
jquery的checkbox,radio,select等方法小结
2016/08/30 Javascript
Vue+Element使用富文本编辑器的示例代码
2017/08/14 Javascript
vue几个常用跨域处理方式介绍
2018/02/07 Javascript
小程序开发基础之view视图容器
2018/08/21 Javascript
微信小程序实现打开并下载服务器上面的pdf文件到手机
2019/09/20 Javascript
jquery获取并修改触发事件的DOM元素示例【基于target 属性】
2019/10/10 jQuery
ES6 Promise对象概念及用法实例详解
2019/10/15 Javascript
PyQt5每天必学之布局管理
2018/04/19 Python
pyspark操作MongoDB的方法步骤
2019/01/04 Python
解决Tensorboard 不显示计算图graph的问题
2020/02/15 Python
基于打开pycharm有带图片md文件卡死问题的解决
2020/04/24 Python
css3实现多个元素依次显示效果
2017/12/12 HTML / CSS
美国知名生活购物网站:Goop
2017/11/03 全球购物
俄罗斯金苹果网上化妆品和香水商店:Goldapple
2019/12/01 全球购物
社区文化建设方案
2014/05/02 职场文书
要账委托书范本
2014/09/15 职场文书
2014年乡镇领导个人整改措施
2014/09/19 职场文书
2014年企业团支部工作总结
2014/12/10 职场文书
物业接待员岗位职责
2015/04/15 职场文书
2019年干货:自我鉴定
2019/03/25 职场文书
选对餐饮营销策略,营业额才会上涨
2019/08/27 职场文书
创业计划书之干洗店
2019/09/10 职场文书