600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > turtle绘制图形--正方形 正六边形 叠边形

turtle绘制图形--正方形 正六边形 叠边形

时间:2020-08-23 07:04:47

相关推荐

turtle绘制图形--正方形 正六边形 叠边形

1、正方形的绘制

正方形如下图所示

思路分析:首先得知道正方形的特点,画一个正方形可从起点绕一圈回到起点,外角和为360°;有4条边,那么外角为360°÷4=90°。所以每次转角都为90°。知道了正方形的特性,就能实现代码了,如下:

# turtle正方形绘制import turtle as t # 用别名t代替turtle库的使用t.pensize(5) # 画笔大小设置为5像素for i in range(4): # 有4条边,所以我们要画四次,用循环实现t.fd(200) # 每次画200像素的长度t.left(90)# 在每次画完200像素的长度后,转90°t.done() # 停止画笔,结束绘画

2、正六边形的绘制

正六边形如下图所示

思路分析:先得知道正六边形的特点,外角和为360°,有六条边,所以外角是360°÷6=60°,所以每次转角为60°。知道了正六边形的特点,那么用代码实现起来就很容易了,如下:

# turtle六边形绘制import turtle as t# 用别名t代替turtle库的使用t.pencolor("white")# 画笔颜色先调为白色t.goto(0, -200) # 小乌龟先移动到坐标(0,-200)处t.pensize(5) # 画笔大小设置为5像素t.pencolor("black")# 画笔颜色调为黑色色for i in range(6):# 有6条边,所以我们要画6次,用循环实现t.fd(200) # 每次画200像素的长度t.left(60)# 在每次画完200像素的长度后,转90°t.done()# 停止画笔,结束绘画

3、叠边形的绘制

叠边形如下图所示

题目要求:使用turtle库,绘制一个叠边形,其中,叠边形内角为100度。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬ 思路分析:(分析一,顺承正方形与正六边形解题思路)小乌龟从起点开始绘制,回到起点,所以得到图形的外角和为360°的整数倍。又因为叠边形有9条边,故外角为360°n÷9=40°×n,观察可知外角比40°大,比直角90°小,故外角为80°。

(分析二,依据题目意思分析)根据题目意思,叠边形的内角为100°,我们默认为这是个正叠边形,即每个内角都是100°,那么每个外角就都是80°了,那么每次的转角就是80°。数一数,一共有九条边。所以我们每次让小乌龟前进200像素,之后转80°,循环9次就能画出叠边形了。

分析清楚,那么代码也能很容易实现出来,如下:

# turtle叠边形绘制import turtle as t# 用别名t代替turtle库的使用t.pencolor("white")# 画笔颜色先调为白色t.goto(0, -200) # 小乌龟先移动到坐标(0,-200)处t.pencolor("black")# 画笔颜色调为黑色t.pensize(5) # 画笔大小设置为5像素for i in range(9):# 有9条边,所以要画9次,用循环实现t.fd(200) # 每次画200像素的长度t.left(80)# 在每次画完200像素的长度后,转80°t.done()# 停止画笔,结束绘画

画完了,观察运行的程序,一共9条边,2圈,每次左转角度为80°,

改变下线条的宽度,看的更直观些。

# turtle叠边形绘制import turtle as t# 用别名t代替turtle库的使用t.pencolor("white")# 画笔颜色先调为白色t.goto(0, -200) # 小乌龟先移动到坐标(0,-200)处t.pencolor("black")# 画笔颜色调为黑色t.pensize(5) # 画笔大小设置为5像素for i in range(4):# 有9条边,先画前4条边,用循环实现t.fd(200) # 每次画200像素的长度t.left(80)# 在每次画完200像素的长度后,转80°t.pencolor("green")# 画笔颜色调为绿色t.pensize(2) # 画笔大小设置为2像素for i in range(5):# 把后面5条边画完,用循环实现t.fd(200) # 每次画200像素的长度t.left(80)# 在每次画完200像素的长度后,转80°t.done()# 停止画笔,结束绘画

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。