码迷,mamicode.com
首页 > 编程语言 > 详细

使用Python的turtle库实现六角形以及正方形螺旋线的绘制

时间:2019-09-11 20:17:13      阅读:1126      评论:0      收藏:0      [点我收藏+]

标签:turtle   font   family   完成   rtl   移动   port   setup   end   

1.六角形的绘制

思路:一个六角形可以看作是两个等边三角形具有共同的中心且垂线互成60°角。所以只需实现一个等边三角形的绘制以及第二个三角形绘制起点的移动即可。

代码如下:

import turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.pensize(1)
turtle.pencolor("red")
turtle.fd(100)
turtle.seth(30)
turtle.pendown()
turtle.fd(80)
turtle.seth(-90)
turtle.fd(80)
turtle.seth(150)
turtle.fd(80)      //第一个三角形绘制完成
turtle.penup()     //将画笔抬起,此时任何画笔操作都不会绘制出来
turtle.seth(30)
turtle.fd(80/3)
turtle.seth(90)
turtle.fd(80/3)     //调整第二个三角形的绘制起点
turtle.pendown()    //将画笔放下,绘制接下来的画笔移动路径
turtle.seth(-30)
turtle.fd(80)
turtle.seth(-150)
turtle.fd(80)
turtle.seth(90)
turtle.fd(80)

 

2.正方形螺旋线的绘制

思路:每画四条线作为一个循环,根据设置的边长来设置循环次数(循环次数应为设置的边长的四分之一)

import turtle
turtle.setup(1000,1000,0,0)
turtle.pensize(1)
turtle.pencolor("violet")
turtle.speed(0)
turtle.penup()
turtle.fd(-250)
turtle.seth(-90)
turtle.fd(250)      //设置绘制起点
turtle.pendown()

x = 100        //正方形初始边长
for i in range(25):   

    turtle.seth(90)
    turtle.fd(x)
    turtle.seth(0)
    turtle.fd(x)
    turtle.seth(-90)
    turtle.fd(x-2)     //每次绘制边长比前一次少2
    turtle.seth(180)
    turtle.fd(x-2)   
    x = x-4

 

使用Python的turtle库实现六角形以及正方形螺旋线的绘制

标签:turtle   font   family   完成   rtl   移动   port   setup   end   

原文地址:https://www.cnblogs.com/hyz1900457346/p/11508115.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!