评价:圆弧部分的绘制速度过慢,找了半天没有解决。
代码如下:
import turtle
import time
#画心形圆弧
def hart_arc():
for i in range(200):
turtle.right(1)
turtle.forward(2)
def move_pen_position(x,y):
turtle.hideturtle() #隐藏画笔
turtle.up() #提笔
turtle.goto(x,y) #移动画笔到指定起始坐标(窗口中心为0,0)
turtle.down() #下笔
turtle.showturtle() #显示画笔
love = "n黄博士比心"
signature = "大羽的29"
#初始化
turtle.setup(width = 800,height = 500) #画布大小
turtle.color('blue','pink') #画笔颜色
turtle.pensize(3) #画笔粗细
turtle.speed(1) #画笔速度
# 初始化画笔起始坐标
move_pen_position(x=0,y=-180) # 移动画笔位置
turtle.left(140) # 向左旋转140度
turtle.begin_fill() # 标记背景填充位置
# 画心形直线( 左下方 )
turtle.forward(224) # 向前移动画笔,长度为224
# 画爱心圆弧
hart_arc() # 左侧圆弧
turtle.left(120) # 调整画笔角度
hart_arc() # 右侧圆弧
# 画心形直线( 右下方 )
turtle.forward(224)
time.sleep(0.8)
turtle.end_fill() # 标记背景填充结束位置
# 在心形中写上表白话语
move_pen_position(0,0) # 表白语位置
turtle.hideturtle() # 隐藏画笔
turtle.color('#CD5C5C', 'pink') # 字体颜色
time.sleep(0.5)
# font:设定字体、尺寸(电脑下存在的字体都可设置) align:中心对齐
turtle.write(love, font=('times new roman', 30, 'bold'), align="center")
# 签写署名
if signature != '':
turtle.color('red', 'pink')
time.sleep(0.2)
move_pen_position(180, -180)
turtle.hideturtle() # 隐藏画笔
turtle.write(signature, font=('Microsoft YaHei', 20), align="center")
# 点击窗口关闭程序
window = turtle.Screen()
window.exitonclick()