用turtle生成彩色圣诞树图片,有树,有雪,有星星
一、简介
本文将介绍如何使用Python的turtle库来生成一个彩色的圣诞树图片。我们将使用turtle库绘制树、雪花和星星,然后将其保存为图片文件。
二、准备工作
-
安装turtle库:在命令行中输入
pip install PythonTurtle进行安装。 -
准备一张空白的图片作为背景。
-
准备一些彩色的笔刷,用于绘制树、雪花和星星。
三、代码实现
import turtleimport random# 设置画布大小和背景颜色screen = turtle.Screen()screen.setup(800, 600)screen.bgcolor("white")# 创建画笔pen = turtle.Turtle()pen.speed(0)pen.hideturtle()# 绘制树def draw_tree(branch_len): if branch_len > 5: pen.forward(branch_len) pen.right(20) draw_tree(branch_len - 15) pen.left(40) draw_tree(branch_len - 15) pen.right(20) pen.backward(branch_len)# 绘制雪花def draw_snowflake(size): for _ in range(6): pen.forward(size) pen.right(60) pen.forward(size) pen.left(120) pen.forward(size) pen.right(60) pen.backward(size) pen.right(60)# 绘制星星def draw_star(size): pen.color("yellow") pen.begin_fill() for _ in range(5): pen.forward(size) pen.right(144) pen.end_fill()# 主程序def main(): # 绘制背景 pen.color("skyblue") pen.begin_fill() pen.circle(300) pen.end_fill() # 绘制树 pen.color("brown") pen.begin_fill() pen.left(90) pen.forward(200) draw_tree(100) pen.left(90) pen.backward(200) pen.end_fill() # 绘制雪花 pen.color("white") for _ in range(100): x = random.randint(-350, 350) y = random.randint(-250, -150) size = random.randint(5, 15) pen.penup() pen.goto(x, y) pen.pendown() draw_snowflake(size) # 绘制星星 pen.color("yellow") for _ in range(20): x = random.randint(-350, 350) y = random.randint(150, 250) size = random.randint(10, 20) pen.penup() pen.goto(x, y) pen.pendown() draw_star(size) # 保存图片 screen.getcanvas().postscript(file="christmas_tree.eps", colormode='color') screen.mainloop()if __name__ == "__main__": main()
四、运行结果
运行上述代码后,会在当前目录下生成一个名为christmas_tree.eps的图片文件。你可以使用其他图像处理软件打开该文件查看效果。