💻 模擬奧運五環無人機燈光秀
學習目標:
- Gesture Recognizer
- CALayer & UIBezierPath
- Class & Function
練習成果:
原始碼:
緣起:
這次的練習,主要是看到下面這篇文章的啟發,不過我簡化了觸模散開與加速度這個部分,主要是練習 swift 實作。
說明:
實作的構想還算直覺,除了長壓連續觸發需要研究一下。
- 使用 javascript 的 canvas getImageData() 將 SVG 存成 json 檔 (可參考上文連結中的 getDotPos 方法。
- 在 swift 中,透過讀取 json 檔,存成座標點的類別陣列,這兩步驟也可以用來畫其他圖案,不用手工一直描點。
3. 設計 Drone 類別,讓 Drone 初始位置是隨機的,目的位置是剛剛載入的圖形座標。
4. 將兩座標分成20份,持續按壓連續觸發時,一次移動一份。
5. 當到達目的座標時,改變 Drone 的顏色。