python 画八角形_GitHub - xuedengyue/Turtle_Drawing: 利用Turtle递归绘制分形几何图形
Turtle_Drawing
利用Turtle递归绘制分形几何图形
一、Turtle的常用方法
方法
描述
turtle.forward(distance)
向当前画笔方向移动distance像素长度
turtle.backward(distance)
向当前画笔相反方向移动distance像素长度
turtle.right(degree)
顺时针移动degree°
turtle.left(degree)
逆时针移动degree°
turtle.penup()
提起笔移动,不绘制图形,用于另起一个地方绘制
turtle.pendown()
移动时绘制图形,缺省时也为绘制
turtle.goto(x,y)
将画笔移动到坐标为x,y的位置
turtle.mainloop()或turtle.done()
保持图形不消失,必须是乌龟图形程序中的最后一个语句
turtle.fillcolor(colorstring)
对绘制图形进行颜色填充
turtle.color(color1, color2)
同时设置pencolor=color1, fillcolor=color2
turtle.begin_fill()
准备开始填充图形
turtle.end_fill()
填充完成
turtle.hideturtle()
隐藏画笔的turtle形状
turtle.showturtle()
显示画笔的turtle形状
二、绘制简单图形
正方形
正方形填充颜色
五角星
八角形
三、递归绘制雪花
雪花的绘制,可以看作是三个完全相同部分的叠加,所以只需要绘制出一个基本图形,其他的图形在此基础上旋转方向即可。
初始的图形(即0阶)是一条线段,每增加一阶,则将上一阶线段中间1/3的位置上画一个三角形,代码如下:
def snow(size , level):
#递归出口,如果阶数减为0,则只是绘制一个线段
if level == 0:
turtle.forward(size)
else:
#递归调用,线段长度减为原来的1/3,阶数减一,绘制降阶后的图形
snow(size/3, level-1)
#相左旋转60度,绘制第二个“儿子”的图形
turtle.left(60)
snow(size/3, level-1)
#向右旋转120度,绘制第三个“儿子”的图形
turtle.right(120)
snow(size/3, level-1)
#向左旋转60度,绘制第四个儿子的图形
turtle.left(60)
snow(size/3, level-1)
0阶图形
1阶图形
2阶图形
3阶图形
则在上面的基础上,可以绘制雪花图案如下:
1阶雪花
2阶雪花
3阶雪花
4阶雪花
四、递归绘制树
使用递归算法绘制树的图形
def tree(size, level):
if level == 1:
turtle.forward(size) #递归出口
else:
turtle.forward(size)
#开始画左半边的树
turtle.right(60)
#回退前递归
tree(size / 2, level - 1);
#回退
turtle.backward(size/2)
#绘制右半边树
turtle.left(120)
tree(size / 2, level-1)
turtle.backward(size/2)
#方向归位
turtle.right(60)
9阶树的图形如下
python 画八角形_GitHub - xuedengyue/Turtle_Drawing: 利用Turtle递归绘制分形几何图形相关推荐
- python turtle画彩虹的代码_Python利用turtle库绘制彩虹代码示例
语言:Python IDE:Python.IDE 需求 做出彩虹效果 颜色空间 RGB模型:光的三原色,共同决定色相 HSB/HSV模型:H色彩,S深浅,B饱和度,H决定色相 需要将HSB模型转换为R ...
- python用turtle画月亮的代码_Python利用turtle库绘制彩虹代码示例
语言:Python IDE:Python.IDE 需求 做出彩虹效果 颜色空间 RGB模型:光的三原色,共同决定色相 HSB/HSV模型:H色彩,S深浅,B饱和度,H决定色相 需要将HSB模型转换为R ...
- python画一棵树源代码_Python+Turtle动态绘制一棵树实例分享
本文实例主要是对turtle的使用,实现Python+turtle动态绘制一棵树的实例,具体代码: # drawtree.py from turtle import Turtle, mainloop ...
- python画奥运五环小结_python使用turtle库绘制奥运五环
Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行 ...
- python的turtle怎么画曲线_利用 turtle库绘制简单图形
turtle库是python的基础绘图库,这个库被介绍为一个最常用的用来介绍编程知识的方法库,其主要是用于程序设计入门,是标准库之一,利用turtle可以制作很多复杂的绘图. turtle名称含义为& ...
- python画笑脸-python 利用turtle库绘制笑脸和哭脸的例子
我就废话不多说了,直接上代码吧! import turtle turtle.pensize(5) turtle.pencolor("yellow") turtle.fillcolo ...
- python turtle画彩虹-Python利用turtle库绘制彩虹代码示例_天津SEO
天津SEO RGB模型:光的三原色,共同决定色相 HSB/HSV模型:H色彩,S深浅,B饱和度,H决定色相 需要将HSB模型转换为RGB模型 代码示例: #-*- coding:utf-8 –*- f ...
- python用turtle画彩虹_Python利用turtle库绘制彩虹代码示例
语言:Python IDE:Python.IDE 需求 做出彩虹效果 颜色空间 RGB模型:光的三原色,共同决定色相 HSB/HSV模型:H色彩,S深浅,B饱和度,H决定色相 需要将HSB模型转换为R ...
- python画笑脸图案-python 利用turtle库绘制笑脸和哭脸的例子
我就废话不多说了,直接上代码吧! import turtle turtle.pensize(5) turtle.pencolor("yellow") turtle.fillcolo ...
最新文章
- 2021年Java面试题目最新总结【90%面试会踩的坑】
- matlab中窗函数的使用(一)
- 输出超限怎么解决 oj_三菱PLC输出指示灯输出模块不亮怎么解决
- VC++创建个性的对话框之MFC篇
- 欢迎使用CSDN-markdown编辑器2131
- linux帮助命令和用法,Linux命令帮助及history命令的使用
- c语言中有关main的问题,c语言小问题
- 想学人工智能从哪入手?
- zetoro导入csl 软件学报
- mysql 字段 英文 变 中文_Oracle将英文字符集数据转换成中文
- VB 2010中Excel文件处理的一个奇怪问题
- nodejs遍历文件夹下所有文件
- 某头条安卓逆向学习----改机/逆向/Hook/协议
- 空手套白狼的典型案例,不花一分钱,整合别家产品,赚自己的钱
- 为promise增加abort功能
- JS window对象
- Redis中的keys和Hkeys的区别
- php 获取数组四分位,如何在JavaScript(或PHP)中获得数组的中位数和四分位数/百分位数?...
- 如何在ps中将图片素描化
- 《东周列国志》第一回 周宣王闻谣轻杀 杜大夫化厉鸣冤
热门文章
- 前些日子联想大y终于到手
- 【笔记】每一对顶点间的最短路径
- 将手机或者平板变成电脑的第二屏幕
- 学习Python的第三节课
- 什么是python的库_什么是python标准库
- JS正则表达式(全)
- RocketMQ安装
- ssm毕设项目民族地区文化调研与数字化保护技术研究---青海平弦乐库的建设及播放平台开发l3479(java+VUE+Mybatis+Maven+Mysql+sprnig)
- SQL server中ROW_NUMBER() OVER()函数的使用方法
- 利用C语言编写一个网络分析器