
先賢曾經用生命為我們揭示了月球繞著地球轉,地球繞著太陽轉的自然規律。現在我們用Scratch來模擬這個現象,做一個太陽、地球、月亮公轉的天體系統,讓小朋友更好地學習這一知識。

在Scratch中讓角色旋轉起來有很多辦法。最基礎的當然是旋轉積木,太陽的自轉就可以使用這種旋轉積木完成。
其實角色是以物體中心點為圓心旋轉的,通過移動角色中心點可以完成地球圍繞太陽公轉的動畫。
在角色造型中框選地球,把它移開就能看到畫面中心有個小十字。這就是物體的中心點,角色旋轉、計算距離和畫筆落筆等都是以這個點為基礎。
縮小畫布把地球移到左上角,同樣用旋轉積木就可以完成地球圍繞太陽的公轉動畫。

這種通過移動物體中心點的方法雖然簡單,卻有缺陷。因為角色的中心點才是角色的本體.計算角色距離和畫筆落點都在這個點上。月亮想要圍繞地球公轉也是找地球的中心點,但是這個點其實和太陽的中心點重合。所以用移動中心點的方法無法制作出地月日三個天體的公轉體系來。需要使用更復雜的辦法。

人眼有視覺暫留效果,電影就是利用這個原理用每秒24幀畫面表現出動態效果。利用這個效果只要角色跳得夠快也能形成動畫的效果。
讓地球角色做循環:移動到太陽位置,逆時針旋轉1度(旋轉角度),移動150步(半徑)。這樣地球角色其實是在太陽位置和公轉軌道位置反復橫跳,只是速度夠快人眼看不出來。給角色添加一個畫筆,從角色軌跡是一串小點就能證明了。
月球也可以用同樣的程序:移動到地球,逆時針旋轉10度,移動40步。可以看到月球的螺旋線軌跡。

在開源Scratch的基礎上有些軟件擁有更多拓展功能。在shequ.codernao.cn/download下載源碼編輯器,這款軟件在Scratch基本功能上有更多強化功能的積木。

比如這次需要用到的圍繞角色旋轉。有了這個積木我們就能很方便地做出地日月三個角色在自轉的基礎上公轉了。由于有了更適合的積木程序,制作起來非常簡單,效果卻是最合乎目標的。