持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第21天,点击查看活动详情
1.什么是turtle?
turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。
1.1在哪画?画布又是什么?
画布就是turtle展开用于绘图区域,可以设置它的大小和初始位置。 设置画布大小
turtle.screensize(canvwidth=None,canvheight=None,bg=None),参数分别为画布的宽(单位像素),高,背景颜色。
如:turtle.screensize(800,600,"green")
1.2用什么画?画笔又是什么?
在画布上,默认有一个坐标原点为画布中心的坐标轴,坐标原点上有一只面朝x轴正方向小乌龟。这里我们描述小乌龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向),turtle绘图中,就是使用位置方向描述小乌龟(画笔)的状态。
画笔的属性: 画笔(画笔的属性,颜色、画线的宽度等)
- turtle.pensize():设置画笔的宽度;
- turtle.pencolor():没有参数传入,返回当前画笔颜色,传入参数设置画笔颜色,可以是字符串如"green","red",也可以是RGB3元组。
- turtle.speed(speed):设置画笔移动速度,画笔绘制的速度范围[0,10]整数,数字越大越快。
1.3怎么去画?
操纵海龟绘图有着许多的命令,这些命令可以划分为3种:一种为运动命令,一种为画笔控制命令,还有一种是全局控制命令,其他的是其他命令。
2. 玫瑰花效果实现
import turtle as tt
tt.penup()
tt.left(90)
tt.forward(200)
tt.pendown()
tt.right(90)
#绘制花瓣
tt.fillcolor("red")
tt.begin_fill()
tt.circle(10,180)
tt.circle(25,110)
tt.left(50)
tt.circle(60,45)
tt.circle(20,170)
tt.right(24)
tt.fd(30)
tt.left(10)
tt.circle(30,110)
tt.fd(20)
tt.left(40)
tt.circle(90,70)
tt.circle(30,150)
tt.right(30)
tt.fd(15)
tt.circle(80,90)
tt.left(15)
tt.fd(45)
tt.right(165)
tt.fd(20)
tt.left(155)
tt.circle(150,80)
tt.left(50)
tt.circle(150,90)
tt.end_fill()
#花瓣1
tt.left(150)
tt.circle(-90,70)
tt.left(20)
tt.circle(75,105)
tt.setheading(60)
tt.circle(80,98)
tt.circle(-90,40)
#花瓣2
tt.left(180)
tt.circle(90,40)
tt.circle(-80,98)
tt.setheading(-83)
#叶子
tt.fd(30)
tt.left(90)
tt.fd(25)
tt.left(45)
tt.fillcolor("green")
tt.begin_fill()
tt.circle(-80,90)
tt.right(90)
tt.circle(-80,90)
tt.end_fill()
tt.right(135)
tt.fd(60)
tt.left(180)
tt.fd(85)
tt.left(90)
tt.fd(80)
#叶子
tt.right(90)
tt.right(45)
tt.fillcolor("green")
tt.begin_fill()
tt.circle(80,90)
tt.left(90)
tt.circle(80,90)
tt.end_fill()
tt.left(135)
tt.fd(60)
tt.left(180)
tt.fd(60)
tt.right(90)
tt.circle(200,60)
tt.pencolor("red")
tt.write("爱你哦!狗妹♥",align="center",font=("宋体",50,"normal"))
tt.done()
3.如何自己使用?
tt.write("爱你哦!狗妹♥",align="center",font=("宋体",50,"normal"))
在这里进行更改,其中50是字体大小,如果你的字数太多可以适当调小。