2009年3月4日 星期三

斜線控制

這是原本電腦鼠的動作,只有分成,左轉90度、右轉90度,直走和回轉。



不過當初的規劃本來就是需要讓電腦鼠跑斜線的。


所以要先對路徑做規劃的動作。這樣才有辦法劃出斜線的路徑。


當初的想法本來是要用一堆的判斷式來寫這樣的組合,不過老大給了這樣有趣的想法。


就試試看了,雖然計算的時後LOADING 會重了一點,但是程式上就可以擁有比較多的彈性了。


也可以將原本校多的判斷式縮減許多。


以下就是老大的想法。


首先需要定義座標,將位置和方向放入後,即可得到較好的座標。


定義好的方式大概是這樣。


在計算的時後,可以利用畢式定理計算出藍色的長度(距離),可以利用ATAN2或是ATAN求得角度。


大至上用這樣的方式就可以轉換新的動作了。


利用這個方式,當演算法找出2條路徑的時後,可以利用這樣的數學式套入權重,計算那條路徑所需要的時間較短,以方便決定較短的路徑。


雖然轉換路徑做好了,不過還要考慮實作上的需要,要直接拿這樣的數值來控制的話是沒有辦法的。


沒有留言:

張貼留言