Python的海龜畫圖模塊不僅僅是畫圖。用它還能製作動畫,製作多媒體遊戲等更多創意作品。在這個叫《酷酷的爆炸效果》作品中。每一個爆炸效果其實都是一隻海龜對象。只不過它們的造型在不斷地變化。爲了有很多效果同時運行,採用了多線程的方式設計這個程序。爲了理解這個作品是如何製作的,下面我們把簡單版本的這個程序進行了問題分解。
我們首先用from turtle import *語句導入海龜命令,然後用Screen命令新建屏幕,接着把爆炸造型一系列gif圖片註冊到造型列表。所謂造型列表,源於Python海龜畫圖內置定義的造型字典。它是這個字典的字母排序的鍵值列表。分析一下turtle.py模塊就能知道這個造型字典的名字叫_shapes。如果要往這個字典中添加一個造型。可以用屏幕的addshape或register_shape命令實現。最後新建海龜對象,讓海龜不斷地切換造型。那麼一個最簡單的爆炸效果動畫就製作出來了。以下是最簡單版本的爆炸效果源代碼:
from turtle import * # 從海龜模塊導入所有命令
screen = Screen() # 新建屏幕
screen.bgcolor('black') # 設定背景爲黑色
eps = [f"explosion/{i}.gif" for i in range(6)]
[screen.addshape(e) for e in eps] # 註冊eps每張圖到造型列表
t = Turtle() # 新建海龜對象
for e in eps: # 讓海龜切換每一個造型
t.shape(e)
t.hideturtle() # 隱藏海龜
如果要有很多爆炸效果此起彼伏地爆炸,怎麼辦呢?這可以有幾種方法,可以用屏幕的定時器命令即ontimer模擬多線程,也可以直接用多線程。接下有詳細的視頻教程,大家最好在電腦上看,相信你一定能學會!這個作品的源代碼和素材的下載網址是:http://www.lixingqiu.com/2020/06/03/kukude/
也可以進入QQ羣:225792826進行下載。趁現在這個QQ羣還不是收費羣,趕快進哦,隨着QQ羣內資源越來越多,說不定什麼時候入此Q羣要收費的哦。下面是詳細的教學視頻:
李興球博客 www.lixingqiu.com 已經匯聚了越來越來多的Python教學/教研資源。價值不斷增大,敬請關注。