1.程序包含兩個角色:小球Ball、發(fā)射按鈕Fire。
小球在舞臺上的起始位置是(-180,-140)。
2.通過設置變量speed和變量angle的值來調(diào)整小球的發(fā)射速度和角度,然后單擊Fire按鈕發(fā)射小球。
當用戶單擊Fire按鈕時,它會廣播一條消息,小球接收消息后發(fā)射出去。
3.小球在發(fā)射前,圖1需要移動到起始位置(-180,-140),然后設置落筆狀態(tài),并清除之前的筆跡。計算初始速度Vx,Vy。
4.小球發(fā)射后,每0.02秒計算并更新一次小球的位置。
首先計算垂直距離dy,如果為負值,說明小球已經(jīng)到達地面,程序結束(圖2)。
5.計算水平距離dx,腳本需要把小球的實際飛行距離轉(zhuǎn)換成在舞臺上的坐標位置,也就是把(dx,dy)轉(zhuǎn)換成(xPos,yPos)。
舞臺中模擬器的垂直長度為320(從-140到180),對應實際長度的100米,從(0到100)。
舞臺中模擬器的水平長度為420(從-180到240),對應實際長度的100米,從(0到100)。
因此小球在舞臺上飛行的垂直距離為320*dy/100步,水平距離為420*dx/100步,這兩個數(shù)值分別加上小球的起始坐標,就是小球的實時位置(圖3)。