繪製正多角星形 ( 單純版 )
這篇文章會沿用「繪製正多邊形」的範例,在 Scratch 裡使用擴充功能的畫筆,搭配變數、函式、定位、清單...等積木,繪製一個可以動態調整邊數和邊長的正多邊形。
積木程式原理
本篇教學為「繪製正多邊形」一文的延伸,請先開啟範例進行編輯。
開啟範例後,從左側積木選單,新增 x 和 y 兩個清單,負責記錄多邊形各個端點的座標。
將範例程式中,函式區塊的「下筆、重複 n 次、停筆」的部分,刪除下筆與停筆積木,加入清單積木 ( 如下圖 )。
從左側積木清單裡,新增一個名為「畫星星」的函式,勾選「執行完畢再更新畫面」。
畫星星的原理很簡單,只需要將每個點都畫出一條線,連接到「點的編號 + 2」的點,最後就能變成一個星星圖案,舉例來說,編號 1 的點會連接到編號 3 ( 1+2 ),編號 2 會連接到 4 ( 2+2 )。
不過要特別注意倒數兩個編號,以六角星形為例,編號 5 加上 2 會變成 7,但實際上編號 5 要連接到編號 1,所以當要連接的編號超過端點數量時,就要改成「編號 + 2 - 端點數量」,例如編號 5 會連接到編號 1 ( 5+2-6 ),而編號 6 會連接到編號 2 ( 6+2-6 )。
下圖是繪製「正六角星形」的過程:
從左側積木清單,新增 a 和 b 兩個變數,a 為起始點的編號數值,b 為連接點的編號。
編輯「畫星星」的函式內容:
- 設定變數 a 為 1,表示從第一個點開始。
- 使用「重複...直到」積木,重複直到 a 大於邊數 ( 有幾個邊就有幾個 a )。
- 每次重複將 b 設定為 a+2。
- 如果 b 大於邊數,就設定 b 為「b - 邊數」。
- 根據清單中對應的數值,將畫筆定位到指定的開始座標。
- 下筆。
- 根據清單中對應的數值,將畫筆定位到指定的連接座標。
- 停筆。
- 結束後將 a 增加 1。
回到「多邊形」的函式,在最下方執行「畫星星」函式。
完成效果
完成後,點擊綠旗,舞台上就會出現一個正多角形,用滑鼠改變滑鼠數值,就會產生對應的變化。
範例解答
範例解答:繪製正多角星形
繼續閱讀
如果已經熟悉了繪製正多角星形 ( 單純 ) 的程式,就可以繼續閱讀「繪製正多角星形 ( 多線 )」的文章。
文章連結:繪製正多角星形 ( 多線 )
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~