首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Turtle库画小猫咪

Turtle库画小猫咪

作者头像
KevinBruce
发布2020-03-12 00:54:38
1.2K0
发布2020-03-12 00:54:38
举报
文章被收录于专栏:CTF及算法学习CTF及算法学习

视频请点击这里哟

这个是用python库画的小猫咪,前面一步步的画整个猫的整个身体,具体步骤都写在了注释之中。身体部分画的比较快,后面画了5个心,由于画心的时候要改变好多度数,而且每次只前进一点点,所以画心的时候会比较慢,大家在看视频的时候会发现这一点。这个东西花了好个小时画出来,好多地方都是几像素几像素的试出来的。不过,我画画能力一般,加上时间有限,并不能完善所有细节。但是我尽可能多的完善了一些线条和布局,弧度之类的的细节,希望大家喜欢我们的作品。

from turtle import *
#两个函数用于画心
def curvemove():
    for i in range(200):
        right(1)
        forward(0.1)
def heart(x,y,s):
    pu()
    goto(x,y)
    seth(s)
    pendown()
    begin_fill()
    left(140)
    forward(11.1)
    curvemove()
    left(120)
    curvemove()
    forward(11.1)
    end_fill()
#初始化
setup(600,600)
pu()
goto(60,100)
pensize(4)
pendown()
#画左半边的头
for i in range(150,212,2):
    seth(i)
    fd(3)
seth(145)
fd(50)
left(125)
fd(50)
for i in range(240,318,2):
    if i==290:
        seth(190)
        fd(10)
        seth(10)
        fd(10)
    elif i==300:
        seth(200)
        fd(10)
        seth(20)
        fd(10)
    seth(i)
    fd(3)
#画右半边的头
pu()
goto(60,100)
pendown()
seth(45)
fd(50)
right(125)
fd(50)
for i in range(-60,-138,-2):
    if i==-110:
        seth(-10)
        fd(10)
        seth(170)
        fd(10)
    elif i==-120:
        seth(-20)
        fd(10)
        seth(160)
        fd(10)
    seth(i)
    fd(3)
#头部到这里就画好外观了
seth(-40)
fd(52)
seth(-135)
fd(45)
pu()
seth(-105)
fd(5)
pendown()
fd(17)
for i in range(130,106,-3):
    seth(i)
    fd(2.5)
for i in range(106,30,-10):
    seth(i)
    fd(2)
seth(38)
fd(25)
seth(135)
fd(31)
seth(169)
fd(6)
seth(270)
fd(105)
#右边的身子画好了
#开始画左边的身子
pu()
goto(-52,-30)
pendown()
seth(220)
fd(48)#52
seth(250)
fd(3)
seth(270)
fd(3)
seth(290)
fd(2)
seth(-40)
fd(44)
seth(228)
fd(20)
seth(5)
fd(22)
#画叉腰的动作
pu()
goto(-52,-84)
seth(133)
pendown()
fd(22)
seth(90)
fd(2)
seth(60)
fd(2)
seth(45)
fd(29)
seth(0)
fd(3)
seth(-93)
fd(102)
#叉腰动作结束 接下来画嘴巴 眼睛
pu()
goto(-43,38)
seth(0)
pendown()
begin_fill()
circle(5)
end_fill()
pu()
fd(108)
pendown()
begin_fill()
circle(5)
end_fill()
#调色环节
pu()
goto(60,24)
pencolor("pink")
pensize(6)
seth(225)
pendown()
fd(7)
pu()
goto(70,24)
seth(225)
pendown()
fd(7)
#右半边调色完毕
pu()
goto(-49,24)
seth(225)
pendown()
fd(7)
#画嘴巴
pu()
pensize(4)
pencolor("black")
goto(5,21)
seth(-45)
pendown()
fd(5)
goto(5,21)
seth(225)
fd(5)
#左边的颜色
pu()
pencolor("pink")
pensize(6)
goto(-39,24)
seth(225)
pendown()
fd(7)

#给耳朵填充颜色
pu()
goto(-40,92)
seth(80)
pendown()
fillcolor("pink")
begin_fill()
circle(14,360,3)
end_fill()
pu()
goto(72,100)
seth(-74)
pendown()
begin_fill()
circle(14,360,3)
end_fill()
#酷酷的黑翅膀
pu()
pensize(4)
color('black', 'black')
begin_fill()
goto(-90,-35)
seth(135)
pendown()
fd(25)
seth(225)
fd(45)
seth(25)
fd(15)
seth(-80)
pensize(2)
fd(15)
seth(55)
fd(15)
seth(25)
fd(10)
seth(-80)
fd(15)
seth(75)
fd(15)
goto(-90,-35)
end_fill()
#最后一个翅膀
pu()
goto(125,-30)
seth(45)
pendown()
begin_fill()
fd(25)
seth(-45)
fd(45)
seth(155)
fd(15)
seth(-80)
fd(15)
seth(120)
fd(17)
seth(170)
fd(15)
seth(-80)
fd(15)
seth(120)
fd(17)
goto(125,-30)
end_fill()

#画5颗心
speed(10)
color('red', 'pink')
pensize(2)
heart(0,140,0)
heart(-125,0,30)
heart(140,0,-30)
heart(145,-85,-30)
heart(-132,-85,30)
exitonclick()
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-11-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档