1+ import random
2+ import turtle as t
3+
4+ list1 = []
5+ for i in range (5 ):
6+ list1 .append (int (random .uniform (- 500 , 500 )))
7+ list2 = []
8+ for i in range (5 ):
9+ list2 .append (int (random .uniform (- 200 , - 50 )))
10+ list3 = []
11+ for i in range (8 ):
12+ list3 .append (int (random .uniform (- 400 , 400 )))
13+ list4 = []
14+ for i in range (8 ):
15+ list4 .append (int (random .uniform (- 150 , - 50 )))
16+ list5 = []
17+ for i in range (7 ):
18+ list5 .append (int (random .uniform (- 300 , 300 )))
19+ list6 = []
20+ for i in range (7 ):
21+ list6 .append (int (random .uniform (- 200 , - 100 )))
22+ list7 = []
23+ for i in range (18 ):
24+ list7 .append (int (random .uniform (- 500 , 500 )))
25+ list8 = []
26+ for i in range (18 ):
27+ list8 .append (int (random .uniform (- 100 , 100 )))
28+
29+ # 画大号爱心(位置随机)
30+ for x , y in list (zip (list1 , list2 )):
31+ t .penup ()
32+ t .goto (x , y )
33+ t .pendown ()
34+ t .fillcolor ("#FF6A6A" )
35+ t .begin_fill ()
36+ t .pencolor ("#FF6A6A" )
37+ t .forward (40 )
38+ t .circle (20 , 180 )
39+ t .right (90 )
40+ t .circle (20 , 180 )
41+ t .forward (40 )
42+ t .end_fill ()
43+ t .penup ()
44+ t .goto (x , y )
45+ # 画中号爱心(位置随机)
46+ for x , y in list (zip (list5 , list6 )):
47+ t .pendown ()
48+ t .fillcolor ("#FFA07A" )
49+ t .begin_fill ()
50+ t .pencolor ("#FFA07A" )
51+ t .forward (30 )
52+ t .circle (15 , 180 )
53+ t .right (90 )
54+ t .circle (15 , 180 )
55+ t .forward (30 )
56+ t .end_fill ()
57+ t .penup ()
58+ t .goto (x , y )
59+ # 画小号爱心(位置随机)
60+ for x , y in list (zip (list3 , list4 )):
61+ t .pendown ()
62+ t .fillcolor ("#FFD39B" )
63+ t .begin_fill ()
64+ t .pencolor ("#FFD39B" )
65+ t .forward (20 )
66+ t .circle (10 , 180 )
67+ t .right (90 )
68+ t .circle (10 , 180 )
69+ t .forward (20 )
70+ t .end_fill ()
71+ t .penup ()
72+ t .goto (x , y )
73+ # 画点点(位置随机)
74+ for x , y in list (zip (list7 , list8 )):
75+ t .pendown ()
76+ t .fillcolor ("#FF6A6A" )
77+ t .begin_fill ()
78+ t .pencolor ("#FF6A6A" )
79+ t .circle (3 , 360 )
80+ t .end_fill ()
81+ t .penup ()
82+ t .goto (x , y )
83+
84+
85+ def DegreeCurve (n , r , d = 1 ):
86+ for i in range (n ):
87+ t .left (d )
88+ t .circle (r , abs (d ))
89+
90+
91+ # 初始位置设定
92+ s = 0.2
93+ # t.setup(450*5*s, 750*5*s)
94+ t .pencolor ("black" )
95+ t .fillcolor ("#FF4040" )
96+ t .speed (100 )
97+ t .penup ()
98+ t .goto (0 , 900 * s )
99+ t .pendown ()
100+ # 绘制花朵形状
101+ t .begin_fill ()
102+ t .circle (200 * s , 30 )
103+ DegreeCurve (60 , 50 * s )
104+ t .circle (200 * s , 30 )
105+ DegreeCurve (4 , 100 * s )
106+ t .circle (200 * s , 50 )
107+ DegreeCurve (50 , 50 * s )
108+ t .circle (350 * s , 65 )
109+ DegreeCurve (40 , 70 * s )
110+ t .circle (150 * s , 50 )
111+ DegreeCurve (20 , 50 * s , - 1 )
112+ t .circle (400 * s , 60 )
113+ DegreeCurve (18 , 50 * s )
114+ t .fd (250 * s )
115+ t .right (150 )
116+ t .circle (- 500 * s , 12 )
117+ t .left (140 )
118+ t .circle (550 * s , 110 )
119+ t .left (27 )
120+ t .circle (650 * s , 100 )
121+ t .left (130 )
122+ t .circle (- 300 * s , 20 )
123+ t .right (123 )
124+ t .circle (220 * s , 57 )
125+ t .end_fill ()
126+ # 绘制花枝形状
127+ t .left (120 )
128+ t .fd (280 * s )
129+ t .left (115 )
130+ t .circle (300 * s , 33 )
131+ t .left (180 )
132+ t .circle (- 300 * s , 33 )
133+ DegreeCurve (70 , 225 * s , - 1 )
134+ t .circle (350 * s , 104 )
135+ t .left (90 )
136+ t .circle (200 * s , 105 )
137+ t .circle (- 500 * s , 63 )
138+ t .penup ()
139+ t .goto (170 * s , - 30 * s )
140+ t .pendown ()
141+ t .left (160 )
142+ DegreeCurve (20 , 2500 * s )
143+ DegreeCurve (220 , 250 * s , - 1 )
144+
145+ # 绘制一个绿色叶子
146+ t .fillcolor ('#00CD00' )
147+ t .penup ()
148+ t .goto (670 * s , - 180 * s )
149+ t .pendown ()
150+ t .right (140 )
151+ t .begin_fill ()
152+ t .circle (300 * s , 120 )
153+ t .left (60 )
154+ t .circle (300 * s , 120 )
155+ t .end_fill ()
156+ t .penup ()
157+ t .goto (180 * s , - 550 * s )
158+ t .pendown ()
159+ t .right (85 )
160+ t .circle (600 * s , 40 )
161+ # 绘制另一个绿色叶子
162+ t .penup ()
163+ t .goto (- 150 * s , - 1000 * s )
164+ t .pendown ()
165+ t .begin_fill ()
166+ t .rt (120 )
167+ t .circle (300 * s , 115 )
168+ t .left (75 )
169+ t .circle (300 * s , 100 )
170+ t .end_fill ()
171+ t .penup ()
172+ t .goto (430 * s , - 1070 * s )
173+ t .pendown ()
174+ t .right (30 )
175+ t .circle (- 600 * s , 35 )
176+
177+ t .done ()
0 commit comments