用python画爱心动图_Python的turtle包绘制动态心形图案

用python画爱心动图_Python的turtle包绘制动态心形图案_第1张图片Python的turtle包绘制动态心形https://www.zhihu.com/video/1154817433545207808

评价:圆弧部分的绘制速度过慢,找了半天没有解决。

代码如下:

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()

你可能感兴趣的:(用python画爱心动图)