家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

作者 | EE Sheep

责编 |伍杏玲

出品 | CSDN博客

家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

Python Turtle 快速入门

Python的Turtle库可以画图,搞出许多有趣的可视化东西,r H e是培养女朋友儿童编程兴趣的好帮手。

Turtle顾名. 1 ^ A 8 e思义,是K r h ) n一只小海龟。它根据函数指令的控制,_ W F 1 z 0在平面坐标系中移动,可以前行、后退、转弯、瞬移、原地画点……落笔时,它爬行留下指定颜色和粗细的路径;无论抬笔还是落笔时都可以圈地填色,画出V ` | 2 g e 5 m有或无边界的平面图案。所谓海l ] p + o [ o z p龟,其实就像机器人手中的画笔。只不过这个机器人走得非常精确,不需要PID。

1、画布与c z f + n r Z画笔设置

默认原点(0,0)在正中间,画笔向东(0方向)移动} ^ D ^ H - F ` P

我们知道py文件的第Y @ 6 5 6 [ ; $ B一行一般是:

import num~ b Cpy as npy

类似地,我们首先输入

fro, I Y t . O L P _m turtle import *

这样的好处是没有必要在每个函数之前都写xx.了,有种满篇野函数的感觉。

home():3 r P c 7& M S D ( L . o Q画笔置于(0,0)点向东状态

clear():清空turtle- : h 0 * W . L `窗口,不改变画笔位置

reset():清空窗4 - 4 + G _ - . P口,回复画笔起始位置

hideturtlz y qe():隐藏画笔的turtle形状

showturtle():显示画笔的turtle形状,默认状态是与画笔同色的箭头

screensize(canvwidt= t x W 2 O rh,canvheight,bg):参数P o $ 3分别为画布的宽,高,背景颜色。

setup(width,height,startx,starty):参数宽~ ] k ` r + 3 h和高为整数时表示像素;为小数时,表示占据电脑屏幕的比例,startx和starty表示矩形窗口左j k I上角顶点的位置,如果为空则窗口位于屏幕中心

pensize(o b [ ^ _size):设置画笔粗细o Y { r ^ T

seth(degree):设置画笔 u s .W k { W Q o 1 N向,参数取值0~360 speed(speed):设置画笔移动^ M 2 @ c ^速度,参数取值1~10的整数

color(color)和fillcolor(color):设G i n 7 $ = C ?置笔触颜色/填充颜色,参数可以是RGB三元组或字符串。字符串对应色卡如图:

家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

(直男朋友们注意一下,目测这里就有至少20种口红色号)

2、 运动命令

fd(d):向前移动距离d

bd(8 q N x 3 : P V _d):向后移动距离d

right(degree):画笔方向向右转动degree度

left~ I A 6 V ^ % |(degree):画笔方向向左转动degree度

goto() ~ ` W !x,y):将画笔移动到(b S 0x,y)位置

stamp():绘制当前图形

undo():撤销上一动作

3、画笔控制

pd():画笔落下,移动时绘制图形

pu():画笔抬起,移动时不绘制图形

dot(diameter,color):以画笔位置为中心绘制一个指定直径和颜色的圆,不改变画笔位置

circle(radius,degree):绘制度数为degree的圆弧,规律如下图,可见半径和度数均可取正负值:

家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

ci+ % 2 i 8 X l Nrcle(radius,degree,step)与上条类似,将这条“圆弧”分段折线化,均匀分成step段。结束时,画笔方向为“圆弧”的切线。例如先分5段画半圆再沿画笔方向前进:

家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

4、插入文字

write函数,三个参数分别为内容、对齐方式和渲染格式。使用样例如下,为了明确align参数的定义方式,绘制圆点指明:

goto(-100,0)

dot(20)

write(\"EESAST the&n: D % $bsp;best!\", align=\"right\", font=(\"华文隶书d d I 6 3 J K j\",20,\"bold\")) #右端对齐

goto(100,50)

dot(20)

write(\". G / v Y fI love THUEE!\", align=\"left\", font=(\"Tempus& s ] 5 H ` W Sans ITC\",20,\"bold\")O D x L) #左端对齐
家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

画一只单身

1.FACE

从(0,0)开始,用朴素的方法,连接线段和90圆弧绘制单身狗的脸(直男配色,直观体验

#脸

pd() #落笔

fd(25) 

#从c 3 a _ s W h起始状态(0,0)H 4 7 C L T ,向东前行25像素

circle(100,90)6 : O Q v 9 

#画一个半径100的1/4圆弧(图中绿色)

circle(120,90)

#再画一个半径120的1/4圆弧(图中蓝色)

fd(10) 

#前行10像素(图中粉色)

circle(120,90)

circle(100,90)

fd(25)

pu() #抬笔
家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

2.EYES

goto(x,y)到达合适的位g ? m ( b C m b H置,和画脸一样绘制眼眶。画眼球的时候可c h ! J Q z k & N以dot画点,也可以按如下方式填充圆形:

# 眼球,刚才画e P V Z x完抬过笔了

goto(60,100)

begin_fi9 v :ll() #开始填充

circle(17) #眼球的轮廓


#如果不是闭合曲线,会连接首尾涂色


endR I W 0_fill() #结束填充
家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

3.FIN[ R ^ MISH

类似地,通过计算(调参),画另一S 7 6 ]只眼睛,接着画嘴巴和耳朵,一只单身狗就画好啦!

家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

送你一颗小心心

阅读完上面的内容,你b e & V D ; o R F应该轻松地学会了一个技能,下一步就是用来Q S , - = } w }装X撩弟撩妹了。送大家一颗调好参数的小心心。还是拼接圆g C + I F I D弧,毕竟小编太懒了。

siw i g g 2 j x ^ze=90 

#这一行可以改,是小心心的大小参数

pu()

goto(0,-100)&nO 5 . % @ ] ~ ; Xbsp;

#这一行可以改,是小心心的起始位置

p{ 1 ? s ud()

# 如果删掉这一行不落笔,就是没有边框的小心心

begin_fill()

seth(150)

fd~ | E )(size)

circle(-3.74*size, 45)

circle(-1/ g b n.43*size, 165)

left(120)

circle(-1.43*size, 165)

circle(-3.74*size, 45)

fd(size)

end_fill()

设置画笔颜色为红色,填充为粉色,效果就是这样啦!

家里蹲太孤单?用 Python 画一只单身狗 | 原力计划

原文链接:

https://blog.csdn.net/THU_COCO/article/details/104531684

声明:本文系CSDN博主原创文章,版权归作者所有。

上一篇

淘小铺的几个关键词的分享,淘小铺彭三哥

下一篇

概率论和拉普拉斯决定论矛盾吗?

评论已经被关闭。

插入图片
返回顶部