2022卡塔尔世界杯如期而至,看到朋友圈,群聊里大家对“战况”分析的头头是道,我只能在一旁干瞪眼,插不上嘴。我的世界杯记忆源自于2014巴西世界杯,球员记忆也只有梅西,可以说是个“球盲”了。眼看自己没啥参与感,抓紧手敲了个足球和卡塔尔国旗和大家分享。
#首先是足球的
import turtle
turtle.screensize(canvwidth=500,canvheight=500,bg='white')#画布尺寸
turtle.pensize(4)#笔的粗细
turtle.speed(0)#绘制速度
#基本参数设置完毕
turtle.circle(150)#基本轮廓turtle.begin_fill()#开始填充右下角类似五边形区域
turtle.penup()
turtle.circle(150,18)
turtle.pendown()
turtle.circle(150,36)
turtle.left(45)
turtle.forward(25)
turtle.left(105)
turtle.forward(50)
turtle.left(38)
turtle.forward(50)
turtle.left(105)
turtle.forward(25)
turtle.end_fill()#第一块填充完毕turtle.penup()
turtle.left(42.5)
turtle.circle(150,60)#移动到第二块起始处
turtle.pendown()
turtle.begin_fill()
turtle.circle(150,36)
turtle.left(45)
turtle.forward(25)
turtle.left(105)
turtle.forward(50)
turtle.left(38)
turtle.forward(50)
turtle.left(105)
turtle.forward(25)
turtle.end_fill()
turtle.left(42)
turtle.circle(150,60)#移动到第三块起始处
turtle.pendown()
turtle.begin_fill()
turtle.circle(150,36)
turtle.left(45)
turtle.forward(25)
turtle.left(105)
turtle.forward(50)
turtle.left(38)
turtle.forward(50)
turtle.left(105)
turtle.forward(25)
turtle.end_fill()
turtle.left(42)
turtle.circle(150,60)#移动到第四块起始处
turtle.pendown()
turtle.begin_fill()
turtle.circle(150,36)
turtle.left(45)
turtle.forward(25)
turtle.left(105)
turtle.forward(50)
turtle.left(38)
turtle.forward(50)
turtle.left(105)
turtle.forward(25)
turtle.end_fill()
turtle.left(42)
turtle.circle(150,60)#移动到第五块起始处
turtle.pendown()
turtle.begin_fill()
turtle.circle(150,36)
turtle.left(45)
turtle.forward(25)
turtle.left(105)
turtle.forward(50)
turtle.left(38)
turtle.forward(50)
turtle.left(105)
turtle.forward(25)
turtle.end_fill()
#填充外围完毕
#没有使用while循环是因为有些小偏差,每次都需要调整
turtle.penup()
turtle.goto(0,0)
turtle.seth(0)#将turtle放到起始点,预备完毕
#用while循环完成几条外围边线的绘画
n=0
while n<5:turtle.left(90)turtle.forward(23)turtle.left(90)turtle.pendown()turtle.forward(45)turtle.forward(-90)turtle.penup()turtle.forward(45)turtle.left(90)turtle.forward(23)turtle.left(90)turtle.circle(150,72)n+=1
turtle.penup()
#外围绘画完毕
#用循环绘制内五边形
turtle.goto(0,95)
turtle.forward(-30)
turtle.begin_fill()
a=0
while a<5:turtle.forward(60)turtle.left(72)a+=1
turtle.end_fill()
#链接边线,因为需要微调,也没有使用循环
turtle.pendown()
turtle.right(72+60)
turtle.forward(50)
turtle.forward(-50)
turtle.left(72+60)
turtle.forward(60)turtle.left(72)
turtle.right(72+42)
turtle.forward(60)
turtle.forward(-60)
turtle.left(72+42)
turtle.forward(60)turtle.left(72)
turtle.right(72+42)
turtle.forward(60)
turtle.forward(-60)
turtle.left(72+45)
turtle.forward(60)turtle.left(72)
turtle.right(72+52)
turtle.forward(70)
turtle.forward(-70)
turtle.left(72+52)
turtle.forward(60)turtle.left(72)
turtle.right(72+62)
turtle.forward(70)
turtle.forward(-70)
turtle.left(72+62)
turtle.forward(60)
#绘制完毕
turtle.hideturtle()#隐藏画笔
turtle.done()#使窗口留存不消失
#然后是卡塔尔国旗
import turtleturtle.pensize(4)
turtle.speed(0)#修改速度
turtle.screensize(canvwidth=1320,canvheight=520,bg='white')
turtle.penup()#到左上角起始点#开始绘制轮廓
turtle.goto(-600,250)
turtle.pendown()
turtle.seth(0)
turtle.forward(1200)
turtle.right(90)
turtle.forward(541)
turtle.right(90)
turtle.forward(1200)
turtle.right(90)
turtle.forward(541)#用for循环绘制分界线,并填色
turtle.right(90)
turtle.forward(384)
turtle.pensize(1)
turtle.color('purple')
turtle.begin_fill()#开始填色
n=0
while n<9:turtle.seth(-90)turtle.left(72.5)turtle.forward(100)turtle.right(72.5)turtle.right(72.5)turtle.forward(100)n+=1
turtle.seth(0)
turtle.forward(816)
turtle.left(90)
turtle.forward(541)
turtle.left(90)
turtle.forward(816)
turtle.end_fill()
turtle.done()#使窗口留存不消失
比较的简单,由于这是本人练习两天半的成果,有点青涩,不能再打磨了,毕竟再慢点世界杯都要结束了,这不八强都出来了吗。以后有机会的话,maybe会单独出一期turtle的基本使用方法总结。
有不足的地方欢迎大家在评论区指正,喜欢的、有需要的朋友复制粘贴拿走不客气哈。
可以的话点赞支持一波。
最后提醒各位,足球是阳光健康的体育活动,千万不要深陷赌球毒潭,远离赌博,珍爱生活。