目录
????????这个项目使用了turtle库绘制了一个编程乐学的Logo。Logo中包含了一个笑脸,以及彩虹、爱心和五环等元素,整体给人一种活泼、欢乐的感觉。
开发环境:PyCharm
编程语言:Python
操作系统:Windows
import turtle as bclx
????????在代码中,使用了turtle库中的一些函数和方法,如penup()、goto()、pencolor()、pensize()、fillcolor()、begin_fill()、pendown()、setheading()、circle()等,来控制乌龟的移动和绘制不同的形状。
????????通过使用这些函数和方法,代码逐步绘制了编程乐学公众号的logo,包括了乌龟的各个部分,如头部、眼睛、鼻子、嘴巴、身体、手、腿等,以及彩虹圈和五环。
????????最后,通过调用hideturtle()和done()函数,隐藏乌龟,并显示绘图结果。
bclx.title('公众号:编程乐学')
bclx.speed(10) # 速度
# 左手
bclx.penup()
bclx.goto(177, 112)
bclx.pencolor("lightgray")
bclx.pensize(3)
bclx.fillcolor("white")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(80)
bclx.circle(-45, 200)
bclx.circle(-300, 23)
bclx.end_fill()
# 左手内
bclx.penup()
bclx.goto(182, 95)
bclx.pencolor("black")
bclx.pensize(1)
bclx.fillcolor("black")
bclx.begin_fill()
bclx.setheading(95)
bclx.pendown()
bclx.circle(-37, 160)
bclx.circle(-20, 50)
bclx.circle(-200, 30)
bclx.end_fill()
# 轮廓
# 头顶
bclx.penup()
bclx.goto(-73, 230)
bclx.pencolor("lightgray")
bclx.pensize(3)
bclx.fillcolor("white")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(20)
bclx.circle(-250, 35)
# 左耳
bclx.setheading(50)
bclx.circle(-42, 180)
# 左侧
bclx.setheading(-50)
bclx.circle(-190, 30)
bclx.circle(-320, 45)
# 左腿
bclx.circle(120, 30)
bclx.circle(200, 12)
bclx.circle(-18, 85)
bclx.circle(-180, 23)
bclx.circle(-20, 110)
bclx.circle(15, 115)
bclx.circle(100, 12)
# 右腿
bclx.circle(15, 120)
bclx.circle(-15, 110)
bclx.circle(-150, 30)
bclx.circle(-15, 70)
bclx.circle(-150, 10)
bclx.circle(200, 35)
bclx.circle(-150, 20)
# 右手
bclx.setheading(-120)
bclx.circle(50, 30)
bclx.circle(-35, 200)
bclx.circle(-300, 23)
# 右侧
bclx.setheading(86)
bclx.circle(-300, 26)
# 右耳
bclx.setheading(122)
bclx.circle(-53, 160)
bclx.end_fill()
# 右耳内
bclx.penup()
bclx.goto(-130, 180)
bclx.pencolor("black")
bclx.pensize(1)
bclx.fillcolor("black")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(120)
bclx.circle(-28, 160)
bclx.setheading(210)
bclx.circle(150, 20)
bclx.end_fill()
# 左耳内
bclx.penup()
bclx.goto(90, 230)
bclx.setheading(40)
bclx.begin_fill()
bclx.pendown()
bclx.circle(-30, 170)
bclx.setheading(125)
bclx.circle(150, 23)
bclx.end_fill()
# 右手内
bclx.penup()
bclx.goto(-180, -55)
bclx.fillcolor("black")
bclx.begin_fill()
bclx.setheading(-120)
bclx.pendown()
bclx.circle(50, 30)
bclx.circle(-27, 200)
bclx.circle(-300, 20)
bclx.setheading(-90)
bclx.circle(300, 14)
bclx.end_fill()
# 左腿内
bclx.penup()
bclx.goto(108, -168)
bclx.fillcolor("black")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(-115)
bclx.circle(110, 15)
bclx.circle(200, 10)
bclx.circle(-18, 80)
bclx.circle(-180, 13)
bclx.circle(-20, 90)
bclx.circle(15, 60)
bclx.setheading(42)
bclx.circle(-200, 29)
bclx.end_fill()
# 右腿内
bclx.penup()
bclx.goto(-38, -210)
bclx.fillcolor("black")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(-155)
bclx.circle(15, 100)
bclx.circle(-10, 110)
bclx.circle(-100, 30)
bclx.circle(-15, 65)
bclx.circle(-100, 10)
bclx.circle(200, 15)
bclx.setheading(-14)
bclx.circle(-200, 27)
bclx.end_fill()
# 右眼
# 眼圈
bclx.penup()
bclx.goto(-64, 120)
bclx.begin_fill()
bclx.pendown()
bclx.setheading(40)
bclx.circle(-35, 152)
bclx.circle(-100, 50)
bclx.circle(-35, 130)
bclx.circle(-100, 50)
bclx.end_fill()
# 眼珠
bclx.penup()
bclx.goto(-47, 55)
bclx.fillcolor("white")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(0)
bclx.circle(25, 360)
bclx.end_fill()
bclx.penup()
bclx.goto(-45, 62)
bclx.pencolor("darkslategray")
bclx.fillcolor("darkslategray")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(0)
bclx.circle(19, 360)
bclx.end_fill()
bclx.penup()
bclx.goto(-45, 68)
bclx.fillcolor("black")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(0)
bclx.circle(10, 360)
bclx.end_fill()
bclx.penup()
bclx.goto(-47, 86)
bclx.pencolor("white")
bclx.fillcolor("white")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(0)
bclx.circle(5, 360)
bclx.end_fill()
# 左眼
# 眼圈
bclx.penup()
bclx.goto(51, 82)
bclx.fillcolor("black")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(120)
bclx.circle(-32, 152)
bclx.circle(-100, 55)
bclx.circle(-25, 120)
bclx.circle(-120, 45)
bclx.end_fill()
# 眼珠
bclx.penup()
bclx.goto(79, 60)
bclx.fillcolor("white")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(0)
bclx.circle(24, 360)
bclx.end_fill()
bclx.penup()
bclx.goto(79, 64)
bclx.pencolor("darkslategray")
bclx.fillcolor("darkslategray")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(0)
bclx.circle(19, 360)
bclx.end_fill()
bclx.penup()
bclx.goto(79, 70)
bclx.fillcolor("black")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(0)
bclx.circle(10, 360)
bclx.end_fill()
bclx.penup()
bclx.goto(79, 88)
bclx.pencolor("white")
bclx.fillcolor("white")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(0)
bclx.circle(5, 360)
bclx.end_fill()
# 鼻子
bclx.penup()
bclx.goto(37, 80)
bclx.fillcolor("black")
bclx.begin_fill()
bclx.pendown()
bclx.circle(-8, 130)
bclx.circle(-22, 100)
bclx.circle(-8, 130)
bclx.end_fill()
# 嘴
bclx.penup()
bclx.goto(-15, 48)
bclx.setheading(-36)
bclx.begin_fill()
bclx.pendown()
bclx.circle(60, 70)
bclx.setheading(-132)
bclx.circle(-45, 100)
bclx.end_fill()
# 彩虹圈
bclx.penup()
bclx.goto(-135, 120)
bclx.pensize(5)
bclx.pencolor("cyan")
bclx.pendown()
bclx.setheading(60)
bclx.circle(-165, 150)
bclx.circle(-130, 78)
bclx.circle(-250, 30)
bclx.circle(-138, 105)
bclx.penup()
bclx.goto(-131, 116)
bclx.pencolor("slateblue")
bclx.pendown()
bclx.setheading(60)
bclx.circle(-160, 144)
bclx.circle(-120, 78)
bclx.circle(-242, 30)
bclx.circle(-135, 105)
bclx.penup()
bclx.goto(-127, 112)
bclx.pencolor("orangered")
bclx.pendown()
bclx.setheading(60)
bclx.circle(-155, 136)
bclx.circle(-116, 86)
bclx.circle(-220, 30)
bclx.circle(-134, 103)
bclx.penup()
bclx.goto(-123, 108)
bclx.pencolor("gold")
bclx.pendown()
bclx.setheading(60)
bclx.circle(-150, 136)
bclx.circle(-104, 86)
bclx.circle(-220, 30)
bclx.circle(-126, 102)
bclx.penup()
bclx.goto(-120, 104)
bclx.pencolor("greenyellow")
bclx.pendown()
bclx.setheading(60)
bclx.circle(-145, 136)
bclx.circle(-90, 83)
bclx.circle(-220, 30)
bclx.circle(-120, 100)
bclx.penup()
# 爱心
bclx.penup()
bclx.goto(220, 115)
bclx.pencolor("brown")
bclx.pensize(1)
bclx.fillcolor("brown")
bclx.begin_fill()
bclx.pendown()
bclx.setheading(36)
bclx.circle(-8, 180)
bclx.circle(-60, 24)
bclx.setheading(110)
bclx.circle(-60, 24)
bclx.circle(-8, 180)
bclx.end_fill()
# 五环
bclx.penup()
bclx.goto(-5, -170)
bclx.pendown()
bclx.pencolor("blue")
bclx.circle(6)
bclx.penup()
bclx.goto(10, -170)
bclx.pendown()
bclx.pencolor("black")
bclx.circle(6)
bclx.penup()
bclx.goto(25, -170)
bclx.pendown()
bclx.pencolor("brown")
bclx.circle(6)
bclx.penup()
bclx.goto(2, -175)
bclx.pendown()
bclx.pencolor("lightgoldenrod")
bclx.circle(6)
bclx.penup()
bclx.goto(16, -175)
bclx.pendown()
bclx.pencolor("green")
bclx.circle(6)
bclx.penup()
bclx.pencolor("black")
bclx.goto(-16, -160)
bclx.write("BEIJING 2022", font=('Arial', 10, 'bold italic'))
bclx.hideturtle()
bclx.done()
????????通过使用turtle库的绘图功能,成功绘制了编程乐学的Logo。在绘制过程中,使用了不同的形状和颜色,使得Logo更加生动有趣。通过这个项目,我学习到了如何使用turtle库绘制图形,并且提高了自己的创造力和审美能力。我还发现了绘图过程中的一些技巧,比如通过调整角度和半径来画出不同形状的曲线。总的来说,这是一个有趣且具有挑战性的项目,我很享受在其中的创作过程。
?????????还可以关注我的宫纵号《编程乐学》,菜单栏,有很多优质的资料等你来学习。