[Python] 纯文本查看 复制代码 import turtle
# 模块一 初始化模块
turtle.setup(800, 600) # 设置窗口大小
turtle.bgpic('坐标背景图.png') # 加载默认背景
tutu = turtle.Turtle() # 召唤图图
tutu.penup() # 画笔抬起
# 模块二 基础形状模块
# 画圆形
def draw_circle(radius, color): # 半径,颜色
tutu.pendown() # 画笔落下
tutu.color(color) # 将画笔和填充颜色同时设置为 color
tutu.begin_fill() # 开始填色
tutu.circle(radius)
tutu.end_fill() # 结束填色
tutu.penup() # 画笔抬起
# 画长方形
def draw_rectangle(width, height, color): # 宽度, 高度, 颜色
tutu.pendown() # 画笔落下
tutu.color(color) # 将画笔和填充颜色同时设置为 color
tutu.begin_fill() # 开始填色
for i in range(2):
tutu.forward(width)
tutu.left(90)
tutu.forward(height)
tutu.left(90)
tutu.end_fill() # 结束填色
tutu.penup() # 画笔抬起
# 画三角形
def draw_triangle(length, color): # 边长, 颜色
tutu.pendown() # 画笔落下
tutu.color(color) # 将画笔和填充颜色同时设置为 color
tutu.begin_fill() # 开始填色
for i in range(3):
tutu.forward(length)
tutu.left(120)
tutu.end_fill() # 结束填色
tutu.penup() # 画笔抬起
# 模块三 按键绘制模块
# 功能一 屏幕点击功能
turtle.onscreenclick(tutu.goto, 1)
# 功能二 按键控制功能
# 画脸
def draw_face():
draw_rectangle(200, 100, 'LemonChiffon')
# 画眼睛
def draw_eyes():
draw_circle(12, 'IndianRed')
# 画嘴巴
def draw_mouth():
draw_triangle(12, 'IndianRed')
# 画耳朵
def draw_ears():
draw_rectangle(12, 40, 'IndianRed')
# 画身体
def draw_body():
# 画长方形的脖子
for i in range(4):
x = tutu.xcor()
y = tutu.ycor()
draw_rectangle(60, 4, 'LightSalmon')
tutu.goto(x, y-8)
# 画圆圆的肚子
x = tutu.xcor()
y = tutu.ycor()
tutu.goto(x+30, y)
draw_circle(-150, 'LemonChiffon')
# 画肚子上的三角形
x = tutu.xcor()
y = tutu.ycor()
tutu.goto(x - 50, y - 100)
draw_triangle(100, 'Khaki')
# 【你需要在这里完成【画天线】的模块】
def draw_antenna():
x = tutu.xcor()
y = tutu.ycor()
draw_rectangle(60, 20, 'IndianRed')
tutu.goto(x+25, y+20)
draw_rectangle(5, 30, 'IndianRed')
tutu.goto(x+45, y+20)
draw_rectangle(5, 45, 'IndianRed')
# 按键事件语句
turtle.onkeypress(draw_face, '1')
turtle.onkeypress(draw_antenna, '2')
turtle.onkeypress(draw_eyes, '3')
turtle.onkeypress(draw_mouth, '4')
turtle.onkeypress(draw_ears, '5')
turtle.onkeypress(draw_body, '6')
# 监听语句
turtle.listen()
# 启动事件循环
turtle.done() |