第17週

學號:40423104

姓名:Yan Syuan

內容大綱

執行動態模擬

  • 執行動態模擬
  • 程式語言
  • 心得感想
  • 自評成績

程式語言架構

  • 程式網頁 → 直接呼叫在網路上的 javascript , Brython 其實是透過 javascript ,讓我們可以寫 Python 格式,與許此程式在網路上執行。
  • 以下圖示為利用Python來執行網頁的必要條件

  • canvas → 需要設定 ID ,屬於 html (也就是超文件),在後面設定畫佈大小。
  • browser 模組中的 document, 並設為 doc 變數 → Brython特有的
  • 導入數學模組(import math)
  • 產生各小球的亂數速度用 (import random)→ 讓每一個小球初始速度是亂數
  • 導入 browser 中的計時器, 建立動畫用(import browser.timer) → 每隔一個時間,要重新刷新螢幕。
  • 取畫布的寬與高度 → 當作程式兩個變數
  • n = 20 (球的數量)
  • 已知數列內容個數, 先分別與 None 對應 → 設定4個數列,分別要放20個球所對應的位置與速度。
  • 設定重力加速度, Y 方向向下為正
  • 設定空氣的黏滯阻尼係數
  • 設定球的彈力係數與半徑
  • 利用迴圈產生初始速度
  • random.random() 將會產生介於 0 與 1 的浮點亂數 → 速度使用此方式設置
  • 透過更新第 i 球 Y 座標的運算邏輯 → 進行運算
  • 透過更新第 i 球 X 座標的運算邏輯 → 進行運算
  • 設定圓的程式
  • 每隔特定時間, 進行動畫繪製 → 依我們規定的暫留的特定時間做動畫繪製
  • 畫布點擊後執行的函式
  • 只要使用者點擊在畫布上任何地方, 即執行 on_canvas_click 函式 → bind為連結
  • 心得感想

    從這次的課程中,老師教我們如何繪製動態的圖,我覺得有點難了,但也收穫很多,在期中到期末在此課程學習到很多,對於程式語言有了更多的了解,下學期期待有更多不同的程式設計。

    自評成績

    最後一週作業了 ,雖然沒有做得很好,也沒有做到自己的期望值,但是我相信,之後再努力一點一定可以達成。

    期中作業給自己的分數:75分