小組討論的結果總結在組長的部落格裡可以看到,我在討論中給出了自己的確定擊球點的方法:
由於冰球和擊球器均是有體積的,因此不同的碰撞會導致冰球的返程有不同的角度和速度,但是最終的目的都是將球打進對方的球門,因此,通過數學方法我們是可以計算出在一定範圍內的擊球點是可以使冰球改變角度,朝向對方球門的。至於如何選擇擊球點,粗略的想了兩種方法,一是產生乙個隨機數,從而隨機確定乙個一定能進球的擊球點,二是根據對方擊球器目前的位置,進而推算出以哪個角度擊球可能可以得到最優解。由於第二種方法需要知道對方擊球器當前座標,但是題目給定的輸入沒有這個值,因此可以採用第一種方法來選擇擊球點。
組長在之前提出的擊球區存在乙個弊病,即當球過於靠後接觸到擊球線,可能會導致無法接到球,如下圖所示情況
因此必須要加入乙個演算法選擇線來判斷球的落點是靠前還是靠後,如果是靠前則採用一種方案(攻擊,即考慮進球),如果靠後則採用一種方案(防守,即不考慮如何進球,只考慮把球擊回)
團隊專案開發日誌(二)
繼續學習ode缸體動力學物理引擎開發庫 使用drawstuff畫簡單的形狀,在本次工程中主要用於話冰球和機械手動作點 用圓代替 程式中加入 include 標頭檔案就能使用。以下為繪製球的 const dreal pos1,r1 繪製球 dssetcolor 1,0,0 顏色的設定 紅,綠,藍 各分...
陣列物件去重 其二
arr arr leto this toup.map questionid questionid questionid reduce o,k,i o k i,o 1 對 questionid 值進行一次統計整理,形如 對剛才的整理結果再進行一次整理 object.keys o map k 裡的 qu...
構建之法閱讀體會其二
構建之法閱讀體會其二 通過讀完這本書,我已經對軟體工程這門課程有了初步的認識,的確複雜且工作量大,所以要更加認真負責的學習,並且多多實踐,運用 做中學 的學習方法 我們最優先要做的是通過盡早的 持續的交付有價值的軟體來使客戶滿意。即使到了開發的後期,也歡迎改變需求。敏捷過程利用變化來為客戶創造競爭優...