几个圣诞树的Turtle绘图

简介: 几个圣诞树的Turtle绘图

1. from turtle import*
2. setup(800,800)
3. speed(5)
4. pensize(5)
5. 
6. up()
7. goto(0, -200)
8. begin_fill()
9. color("red")
10. pd()
11. circle(150)
12. end_fill()
13. 
14. color('brown')
15. up()
16. goto(-90,0)
17. pd()
18. circle(180,40)
19. up()
20. seth(105)
21. goto(-20,20)
22. pd()
23. circle(180,50)
24. pd()
25. 
26. begin_fill()
27. color('green')
28. circle(180,50)
29. seth(-30)
30. circle(180,55)
31. end_fill()
32. 
33. begin_fill()
34. color('green')
35. seth(0)
36. circle(180,50)
37. seth(-180)
38. circle(180,50)
39. end_fill()
40. done()

1. import turtle
2. 
3. screen=turtle.Screen()
4. screen.setup(700,700)
5. c=turtle.Turtle()#海龟c
6. c.shape("circle")#将海龟c造型换成圆
7. c.color("red")#海龟颜色
8. c.speed(8)#速度
9. c.up()#抬笔
10. 
11. s=turtle.Turtle()#海龟s
12. s.shape("square")  # 将海龟s造型换成方块
13. s.color('green')  # 海龟颜色
14. s.speed(8)  # 速度
15. s.up()  # 抬笔
16. 
17. c.goto(0, 280)#位置
18. c.stamp()#图章
19. k=0
20. for i in range(1,13):
21.     y=30*i  #初始化高度
22. for j in range(i-k):
23.         x=30*j
24.         s.goto(x,-y+280)
25.         s.stamp()
26.         s.goto(-x,-y+280)
27.         s.stamp()
28. if i%4==0:
29.         x=30*(j+1)
30.         c.color('red')
31.         c.goto(-x,-y+280)
32.         c.stamp()
33.         c.goto(x,-y+280)
34.         c.stamp()
35. if i%4==3:
36.         x=30*(j+1)
37.         c.color('yellow')
38.         c.goto(-x, -y+280)
39.         c.stamp()
40.         c.goto(x, -y+280)
41.         c.stamp()
42. s.color('brown')
43. for i in range(13, 17):
44.     y = 30*i
45. for j in range(2):
46.         x = 30*j
47.         s.goto(x, -y+280)
48.         s.stamp()
49.         s.goto(-x, -y+280)
50.         s.stamp()
51. turtle.done()

1. import turtle
2. import time
3. 
4. def tree(d,s):
5. if d<=0: 
6. return
7.     turtle.fd(s)
8.     tree(d-1,s*.8)
9.     turtle.rt(120)
10.     tree(d-3,s*.5)
11.     turtle.rt(120)
12.     tree(d-3, s*.5)
13.     turtle.rt(120)
14.     turtle.backward(s)
15. n=100
16. turtle.speed(0)
17. turtle.lt(90)
18. turtle.fd(3*n)
19. turtle.color('orange','yellow')
20. turtle.lt(126)
21. 
22. for i in range(5):
23.     turtle.fd(n/5)
24.     turtle.rt(144)
25.     turtle.forward(n/5)
26.     turtle.lt(72)
27.     turtle.end_fill()
28. turtle.rt(126)
29. turtle.color("dark green")
30. turtle.backward(n*4.8)
31. 
32. tree(15,n)
33. turtle.backward(n/5)
34. turtle.done()

1. import turtle as t #as就是取个别名 后续调用的t都是turtle
2. from turtle import *
3. import random as r
4. 
5. n=100.0
6. 
7. speed(0) #定义速度
8. screensize(bg='black') #定义背景颜色 可以自己换颜色
9. left(90)
10. forward(3*n)
11. 
12. color("orange","yellow") #定义最上端的星星颜色 边缘是orange 填充是yellow
13. begin_fill()
14. left(126)
15. for i in range(5): #画五角星
16.     forward(n/5)
17.     right(144)  #旋转角度
18.     forward(n/5)
19.     left(72)  # 旋转角度
20. end_fill()
21. right(126)
22. 
23. def drawlight():#定义画彩灯的方法
24. if r.randint(0,30) ==0:#如果觉得彩灯太多 可以把取值范围加大一些,对应的灯就会少一些
25.         color('tomato')#定义第一种颜色
26.         circle(6)#定义彩灯大小
27. elif r.randint(0,30)==1:
28.         color('orange')  # 定义第二种颜色
29.         circle(3)#定义彩灯大小
30. else :
31.         color('dark green')#其余的随机情况下画树枝
32. color("dark green")#定义树枝颜色
33. backward(n*4.8)
34. def tree(d,s):#开始绘制递归树
35. if d<=0: return
36.     forward(s)
37.     tree(d-1,s*.8)
38.     right(120)
39.     tree(d-3,s*.5)
40.     drawlight()#同时调用小彩灯
41.     right(120)
42.     tree(d-3,s*.5)
43.     right(120)
44.     backward(s)
45. tree(15,n)
46. backward(n/2)
47. 
48. for i in range(200):#循环绘制最底部的小装饰
49.     a=200-400*r.random()
50.     b=10-20*r.random()
51.     up()
52.     forward(b)
53.     left(90)
54.     forward(a)
55.     down()
56. if r.randint(0,1)==0:
57.         color('tomato')
58. else :
59.         color('wheat')
60.     circle(2)
61.     up()
62.     backward(a)
63.     right(90)
64.     backward(b)
65. 
66. t.color("dark red","red")#定义字体颜色
67. t.write("Merry Christmas",align="center",font=("Comic Sans MS",40,"bold"))#定义文字 位置 字体 大小
68. 
69. def drawsnow():#定义画雪花的方法
70.     t.ht()#隐藏笔头 ht=hideturtle
71.     t.pensize(2)#定义笔头大小
72. for i in range(200):#画多少雪花
73.         t.pencolor("white")#定义画笔颜色
74.         t.pu()#penup 提笔
75.         t.setx(r.randint(-350,350))#定义x的随机坐标
76.         t.sety(r.randint(-100,350))#定义y的随机坐标
77.         t.pd()#pendown 落笔
78.         dens=6 #花瓣数量
79.         snowsize=r.randint(1,10) #雪花随机大小
80. for j in range(dens):#绘制雪花
81.             t.fd(int(snowsize))
82.             t.backward(int(snowsize))
83.             t.right(int(360/dens))
84. drawsnow()#调用绘制雪花的方法
85. t.done()#绘制完成 否则会直接关闭


相关文章
|
1月前
ThreeJs绘制圆柱体
这篇文章介绍了在Three.js中绘制圆柱体的方法,包括创建圆柱体几何体、设置材质以及将其正确放置在三维场景中的技巧。
46 0
ThreeJs绘制圆柱体
|
3月前
|
缓存 图形学 C++
Unreal学习笔记2-绘制简单三角形
Unreal学习笔记2-绘制简单三角形
32 0
|
5月前
画图,学用circle画圆形
【6月更文挑战第23天】画图,学用circle画圆形。
40 11
|
6月前
|
Python
绘制你的图像-turtle
`turtle`是Python中的一个图形绘制库,源自1967年的Logo编程语言。它使用tkinter创建图形界面,让用户仿佛操控一支在画布上画画的笔。基本操作包括设置画笔颜色、填充、移动及旋转。示例代码展示了如何创建图形,如红黄相间的形状和太极图。turtle还可用于制作动画,如小球下落效果。此外,文中还给出了绘制玫瑰曲线、螺旋和扇子的代码示例。turtle是引导初学者学习编程的好工具。5月更文挑战第18天
55 0
|
6月前
画图,学用circle画圆形。
画图,学用circle画圆形。
43 1
|
6月前
|
弹性计算 数据安全/隐私保护 Python
快速搭建python turtle画布,画出专属你的冬日浪漫
turtle库是Python语言中自带的一个用于绘制图像的函数库。turtle库为使用者提供一个或多个小乌龟作为画笔,使用者可通过turtle库提供的各种方法去控制小乌龟在一个平面直角坐标系中移动并绘制移动轨迹以画出想要的图案。
快速搭建python turtle画布,画出专属你的冬日浪漫
|
6月前
|
Python
基于python的turtle实现圣诞树的绘制
基于python的turtle实现圣诞树的绘制
|
前端开发 Python
Python tkinter库之Canvas直线画圆和莫尔条纹
Python tkinter库之Canvas直线画圆和莫尔条纹
174 0
|
Python
每日一练:Python代码绘制航海王草帽路飞,打饭阿姨也能跟着学会的Turtle海龟绘图系列
每日一练:Python代码绘制航海王草帽路飞,打饭阿姨也能跟着学会的Turtle海龟绘图系列
247 0
python-turtle(海龟绘图)圣诞树
前言: 1.在开始前需要引入turtle库,若没有下载这个库可以复制下面这条语句在PyCharm终端下载 pip install turtle 2.turtle库,它这个画笔是在这个窗口横轴x轴,纵轴y轴从原点(0,0)处开始,以函数指令使其移动绘图。 正文: 一:开始前引入所需的库 # turtle as t 是将turtle替换为t import turtle as t # 随机库 import random # 引入turtle库中的所有用法 from turtle import * 二:设置窗口属性和RGB颜色属性以及绘图数度 # 设置窗口大小和背景颜色 t.screensize(80
python-turtle(海龟绘图)圣诞树