您的当前位置:首页正文

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

2021-01-10 来源:年旅网
使⽤Python的turtle库实现六⾓形以及正⽅形螺旋线的绘制

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绘制结果:

因篇幅问题不能全部显示,请点此查看更多更全内容