1. 程式人生 > 其它 >雪容容

雪容容

  1 # import package 
  2 import turtle 
  3 from turtle import *
  4 import time
  5 # set background image 
  6 #turtle.bgpic("xrr.png")
  7 
  8 pm=Screen() #新建螢幕物件
  9 pm.delay (2)  #設定螢幕延時為0
 10 pm.title("雪容融")
 11 turtle.speed(2)  # 速度
 12 
 13 
 14 # 大頭的圈圈
 15 turtle.penup()
 16 turtle.goto(-145, 135)
17 turtle.pensize(10) 18 turtle.pencolor("#BB3529") 19 turtle.fillcolor("#DA2D20") 20 turtle.begin_fill() 21 turtle.pendown() 22 turtle.setheading(45) 23 turtle.circle(-150, 45) 24 turtle.forward(80) 25 turtle.circle(-150, 180) 26 turtle.forward(80) 27 turtle.circle(-150, 135) 28 turtle.end_fill()
29 30 31 #花紋 32 turtle.fillcolor("#FF9300") 33 turtle.begin_fill() 34 35 turtle.pensize(5) 36 turtle.setheading(15) 37 turtle.circle(-600, 28) 38 turtle.pencolor("#FF9300") 39 turtle.right(30) 40 turtle.circle(-150, -35) 41 turtle.setheading(180) 42 turtle.forward(100) 43 turtle.circle(150, 42)
44 turtle.end_fill() 45 46 turtle.pencolor("#DA2D20") 47 turtle.penup() 48 turtle.goto(-100, 160) 49 turtle.fillcolor("#DA2D20") 50 turtle.begin_fill() 51 turtle.pendown() 52 turtle.circle(4, 360) 53 turtle.end_fill() 54 55 turtle.penup() 56 turtle.goto(-40, 169) 57 turtle.fillcolor("#DA2D20") 58 turtle.begin_fill() 59 turtle.pendown() 60 turtle.circle(4, 360) 61 turtle.end_fill() 62 63 turtle.penup() 64 turtle.goto(20, 169) 65 turtle.fillcolor("#DA2D20") 66 turtle.begin_fill() 67 turtle.pendown() 68 turtle.circle(4, 360) 69 turtle.end_fill() 70 71 turtle.penup() 72 turtle.goto(80, 163) 73 turtle.fillcolor("#DA2D20") 74 turtle.begin_fill() 75 turtle.pendown() 76 turtle.circle(4, 360) 77 turtle.end_fill() 78 79 #內部弧線 80 #從左往右 81 #1 82 turtle.pencolor("#FF9300") 83 turtle.penup() 84 turtle.goto(-130, 135) 85 turtle.setheading(52) 86 turtle.pendown() 87 turtle.circle(-175, -60) 88 turtle.circle(-125, -70) 89 #2 90 turtle.penup() 91 turtle.goto(-80, 150) 92 turtle.setheading(54) 93 turtle.pendown() 94 turtle.circle(-175, -40) 95 turtle.circle(-200, -50) 96 #3 97 turtle.penup() 98 turtle.goto(-10, 155) 99 turtle.setheading(75) 100 turtle.pendown() 101 turtle.circle(-480, -35) 102 #4 103 turtle.penup() 104 turtle.goto(50, 150) 105 turtle.setheading(115) 106 turtle.pendown() 107 turtle.circle(270, -40) 108 turtle.circle(500, -12) 109 #5 110 turtle.penup() 111 turtle.goto(120, 140) 112 turtle.setheading(130) 113 turtle.pendown() 114 turtle.circle(180, -40) 115 turtle.circle(145, -80) 116 117 #臉部 118 turtle.pensize(8) 119 turtle.pencolor("#BB3529") 120 turtle.penup() 121 turtle.goto(-125, 40) 122 turtle.setheading(216) 123 turtle.fillcolor("white") 124 turtle.begin_fill() 125 turtle.pendown() 126 turtle.circle(34, 170) 127 turtle.right(60) 128 turtle.circle(170, 63) 129 turtle.right(60) 130 turtle.circle(32, 158) 131 turtle.right(65) 132 turtle.circle(34, 157) 133 turtle.circle(-15, 155) 134 turtle.left(30) 135 turtle.circle(36, 127) 136 turtle.circle(-15, 45) 137 turtle.right(38) 138 turtle.circle(36, 107) 139 turtle.circle(-15, 55) 140 turtle.right(22) 141 turtle.circle(32, 120) 142 turtle.end_fill() 143 #臉蛋 144 #左邊 145 turtle.pencolor("#F44F39") 146 turtle.penup() 147 turtle.goto(-120, 5) 148 turtle.fillcolor("#F44F39") 149 turtle.begin_fill() 150 turtle.pendown() 151 turtle.circle(15, 360) 152 turtle.end_fill() 153 #右邊 154 turtle.penup() 155 turtle.goto(85, 0) 156 turtle.fillcolor("#F44F39") 157 turtle.begin_fill() 158 turtle.pendown() 159 turtle.circle(15, 360) 160 turtle.end_fill() 161 #眼睛 162 turtle.pensize(1) 163 #右黑 164 turtle.pencolor("#534A49") 165 turtle.penup() 166 turtle.goto(65, 35) 167 turtle.fillcolor("#534A49") 168 turtle.begin_fill() 169 turtle.pendown() 170 turtle.setheading(90) 171 turtle.circle(9, 180) 172 turtle.forward(9) 173 turtle.circle(9, 180) 174 turtle.forward(9) 175 turtle.end_fill() 176 #右白 177 turtle.penup() 178 turtle.pencolor("white") 179 turtle.goto(57, 36) 180 turtle.fillcolor("white") 181 turtle.begin_fill() 182 turtle.pendown() 183 turtle.setheading(90) 184 turtle.circle(3, 360) 185 turtle.end_fill() 186 #左黑 187 turtle.pencolor("#534A49") 188 turtle.penup() 189 turtle.goto(-51, 35) 190 turtle.fillcolor("#534A49") 191 turtle.begin_fill() 192 turtle.pendown() 193 turtle.setheading(90) 194 turtle.circle(9, 180) 195 turtle.forward(9) 196 turtle.circle(9, 180) 197 turtle.forward(9) 198 turtle.end_fill() 199 #左白 200 turtle.penup() 201 turtle.pencolor("white") 202 turtle.goto(-58, 36) 203 turtle.fillcolor("white") 204 turtle.begin_fill() 205 turtle.pendown() 206 turtle.setheading(90) 207 turtle.circle(3, 360) 208 turtle.end_fill() 209 210 #頭頂 211 turtle.pensize(5) 212 turtle.penup() 213 turtle.pencolor("#5FA8D2") 214 turtle.goto(-108, 170) 215 turtle.fillcolor("white") 216 turtle.begin_fill() 217 turtle.pendown() 218 turtle.setheading(24) 219 turtle.forward(70) 220 turtle.left(15) 221 turtle.circle(-68, 80) 222 turtle.left(22) 223 turtle.forward(78) 224 turtle.circle(-4, 175) 225 turtle.forward(40) 226 turtle.right(22) 227 turtle.circle(24, 62) 228 turtle.circle(-34, 62) 229 turtle.circle(34, 75) 230 turtle.circle(-34, 62) 231 turtle.circle(24, 72) 232 turtle.right(30) 233 turtle.forward(24) 234 turtle.circle(-4, 180) 235 turtle.forward(4) 236 turtle.end_fill() 237 238 #皇冠 239 turtle.pensize(5) 240 turtle.setheading(0) 241 turtle.penup() 242 turtle.pencolor("#E7A910") 243 turtle.goto(-15, 225) 244 turtle.fillcolor("white") 245 turtle.begin_fill() 246 turtle.pendown() 247 turtle.circle(-7, 260) 248 turtle.left(70) 249 turtle.circle(-11, 180) 250 turtle.left(52) 251 turtle.circle(-27, 93) 252 turtle.left(62) 253 turtle.circle(-10, 180) 254 turtle.left(70) 255 turtle.circle(-7, 260) 256 turtle.setheading(-135) 257 turtle.forward(15) 258 turtle.right(90) 259 turtle.forward(10) 260 turtle.left(90) 261 turtle.forward(10) 262 turtle.end_fill() 263 264 #左手 265 turtle.pensize(6) 266 turtle.penup() 267 turtle.pencolor("#BB3529") 268 turtle.goto(-60, -135) 269 turtle.fillcolor("#DA2D20") 270 turtle.begin_fill() 271 turtle.pendown() 272 turtle.setheading(150) 273 turtle.forward(50) 274 turtle.circle(25,110) 275 turtle.circle(32,90) 276 turtle.circle(332,10) 277 turtle.end_fill() 278 279 #右手 280 turtle.pensize(6) 281 turtle.penup() 282 turtle.pencolor("#BB3529") 283 turtle.goto(80, -125) 284 turtle.fillcolor("#DA2D20") 285 turtle.begin_fill() 286 turtle.pendown() 287 turtle.setheading(-30) 288 turtle.forward(50) 289 turtle.circle(-25,110) 290 turtle.circle(-32,90) 291 turtle.end_fill() 292 293 #左腳 294 turtle.pensize(6) 295 turtle.penup() 296 turtle.pencolor("#BB3529") 297 turtle.goto(-65, -225) 298 turtle.fillcolor("#DA2D20") 299 turtle.begin_fill() 300 turtle.pendown() 301 turtle.setheading(-70) 302 turtle.forward(40) 303 turtle.circle(10,40) 304 turtle.circle(55,40) 305 turtle.circle(10,70) 306 turtle.forward(25) 307 turtle.end_fill() 308 309 #右腳 310 turtle.pensize(6) 311 turtle.penup() 312 turtle.pencolor("#BB3529") 313 turtle.goto(70, -225) 314 turtle.fillcolor("#DA2D20") 315 turtle.begin_fill() 316 turtle.pendown() 317 turtle.setheading(-110) 318 turtle.forward(40) 319 turtle.circle(-10,40) 320 turtle.circle(-50,40) 321 turtle.circle(-10,70) 322 turtle.forward(25) 323 turtle.end_fill() 324 325 #腳的花紋 326 turtle.pensize(7) 327 turtle.penup() 328 turtle.pencolor("#FF9300") 329 turtle.goto(-50, -255) 330 turtle.pendown() 331 turtle.setheading(-20) 332 turtle.circle(100,27) 333 334 turtle.pensize(7) 335 turtle.penup() 336 turtle.pencolor("#FF9300") 337 turtle.goto(15, -258) 338 turtle.pendown() 339 turtle.setheading(-10) 340 turtle.circle(80,28) 341 342 #身體 343 turtle.pensize(10) 344 turtle.penup() 345 turtle.pencolor("#BB3529") 346 turtle.goto(-60, -125) 347 turtle.fillcolor("#DA2D20") 348 turtle.begin_fill() 349 turtle.pendown() 350 turtle.setheading(-120) 351 turtle.circle(130,30) 352 turtle.circle(40,62) 353 turtle.circle(145,45) 354 turtle.circle(42,62) 355 turtle.circle(130,35) 356 turtle.end_fill() 357 #中間白色 358 turtle.penup() 359 turtle.pencolor("white") 360 turtle.goto(45, -173) 361 turtle.fillcolor("white") 362 turtle.begin_fill() 363 turtle.pendown() 364 turtle.circle(38,360) 365 turtle.end_fill() 366 #冬奧會象形字 367 turtle.setheading(-138) 368 turtle.pensize(4) 369 turtle.penup() 370 turtle.pencolor("red") 371 turtle.goto(10, -162) 372 turtle.pendown() 373 turtle.forward(12) 374 375 turtle.setheading(18) 376 turtle.pencolor("blue") 377 turtle.forward(22) 378 379 turtle.setheading(-140) 380 turtle.pencolor("lightblue") 381 turtle.forward(34) 382 383 turtle.setheading(28) 384 turtle.pencolor("yellowgreen") 385 turtle.forward(24) 386 387 turtle.pencolor("yellow") 388 turtle.circle(-5,200) 389 390 turtle.pensize(2) 391 turtle.pencolor("lightblue") 392 turtle.circle(23,18) 393 394 turtle.penup() 395 turtle.setheading(135) 396 turtle.pencolor("red") 397 turtle.goto(0, -215) 398 turtle.pendown() 399 turtle.circle(-4,150) 400 401 turtle.penup() 402 turtle.setheading(175) 403 turtle.pencolor("blue") 404 turtle.goto(8, -220) 405 turtle.pendown() 406 turtle.circle(-5,120) 407 408 turtle.penup() 409 turtle.setheading(245) 410 turtle.pencolor("green") 411 turtle.goto(18, -215) 412 turtle.pendown() 413 turtle.circle(-4,180) 414 415 turtle.penup() 416 turtle.goto(-16, -199) 417 turtle.pencolor("black") 418 turtle.pendown() 419 turtle.write("BEIJING 2022", font=('華文行楷', 6, 'bold italic')) 420 turtle.penup() 421 turtle.goto(-10, -203) 422 turtle.pencolor("black") 423 turtle.pendown() 424 turtle.write("Paralympic Games", font=('Arial', 4)) 425 426 #圍巾 427 turtle.pensize(1) 428 turtle.penup() 429 turtle.pencolor("#FF9300") 430 turtle.goto(-74, -113) 431 turtle.fillcolor("#FF9300") 432 turtle.begin_fill() 433 turtle.pendown() 434 turtle.setheading(5) 435 turtle.circle(-1000,3) 436 turtle.right(10) 437 turtle.circle(300,19) 438 turtle.right(30) 439 turtle.circle(-15,120) 440 turtle.circle(-100,4) 441 turtle.right(20) 442 turtle.circle(-300,25) 443 turtle.right(20) 444 turtle.circle(-65,23) 445 turtle.circle(-15,80) 446 turtle.end_fill() 447 448 turtle.pensize(1) 449 turtle.penup() 450 turtle.pencolor("#FF9300") 451 turtle.goto(-57, -135) 452 turtle.fillcolor("#FF9300") 453 turtle.begin_fill() 454 turtle.pendown() 455 turtle.setheading(-105) 456 turtle.forward(50) 457 turtle.circle(5,80) 458 turtle.forward(28) 459 turtle.circle(5,100) 460 turtle.forward(60) 461 turtle.end_fill() 462 #圍巾末尾 463 turtle.pensize(3) 464 turtle.penup() 465 turtle.pencolor("#DA2D20") 466 turtle.goto(-61, -175) 467 turtle.pendown() 468 turtle.setheading(-105) 469 turtle.forward(20) 470 471 turtle.penup() 472 turtle.pencolor("#DA2D20") 473 turtle.goto(-54, -178) 474 turtle.pendown() 475 turtle.setheading(-105) 476 turtle.forward(20) 477 478 turtle.penup() 479 turtle.pencolor("#DA2D20") 480 turtle.goto(-47, -181) 481 turtle.pendown() 482 turtle.setheading(-105) 483 turtle.forward(20) 484 485 turtle.penup() 486 turtle.pencolor("#DA2D20") 487 turtle.goto(-40, -184) 488 turtle.pendown() 489 turtle.setheading(-105) 490 turtle.forward(20) 491 492 493 turtle.penup() 494 turtle.goto(145, -223) 495 turtle.pencolor("#DA2D20") 496 turtle.pendown() 497 turtle.write("雪容融", font=('華文琥珀', 20)) 498 turtle.hideturtle() 499 500 #彈幕 501 t=Turtle(visible=False) #新建不可見的海龜物件 502 t1=Turtle(visible=False) 503 t2=Turtle(visible=False) 504 t3=Turtle(visible=False) 505 t4=Turtle(visible=False) 506 t5=Turtle(visible=False) 507 t.penup() 508 t1.penup() 509 t2.penup() 510 t3.penup() 511 t4.penup() 512 t.color("gold") 513 t2.color("#DA2D20") 514 t3.color("lightblue") 515 t4.color("yellowgreen") 516 t.goto(400,0) #到最右邊去 517 t1.goto(400,100) 518 t2.goto(400,200) 519 t3.goto(400,-200) 520 t4.goto(400,-100) 521 leftx = -1200 522 info=[] 523 while t.xcor() > leftx: 524 t.clear() #清空視窗,如果不清空頻繁寫字,每次的字就會覆蓋在一起 525 t1.clear() 526 t2.clear() 527 t3.clear() 528 t4.clear() 529 t.write(info[t.xcor()%60],align='left',font=("Bahnschrift",30,"normal")) 530 t1.write("",align='left',font=("Segoe UI Emoji",20,"normal")) 531 t2.write("",align='left',font=("華文琥珀",20,"normal")) 532 t3.write("",align='left',font=("Bahnschrift",20,"normal")) 533 t4.write("",align='left',font=("Bahnschrift",30,"normal")) 534 pm.update() #重新整理螢幕 535 time.sleep(0.02) #等待0.01秒 536 t.setx(t.xcor() - 1) #左移兩個單位 537 t1.setx(t1.xcor() - 5) 538 t2.setx(t2.xcor() - 2) 539 t3.setx(t3.xcor() - 3) 540 t4.setx(t4.xcor() - 4) 541 pm.exitonclick() #單擊螢幕關閉視窗 542 543 544 turtle.done()