我正在做一個尋路項目,作爲我第四年軟件工程學位的一部分。 我們假設給一堆多智能體尋路算法提供視覺表示。最簡單的是A *適用於多代理。擺動柵格單元的顏色淡化動畫Pin
無論如何,我們的環境是一個網格地圖,每個單元格可以被阻塞或用作代理程序路徑的一部分。我想要做的是使用動畫給出代理的最終移動的良好表示,但在網格中爲動畫改變顏色。 I.E用一些顏色畫出路徑中的每一步,以顯示代理如何移動。
而我想要做的另一件事是通過在打開列表和A *算法的閉合列表中繪製其計算過程中的更改來表示算法的工作方式。
我正在使用觀察者設計模式的改編版本,從我的算法層發送事件到我的控制器和GUI層。 我想在GUI層中做的事情是每次將一個圖塊添加到打開的列表中時,我想讓該圖元以某種顏色繪製,然後根據預定義的計時器將其消除,或者稍後可以將滑塊添加到控制這個計時器。我看了一下code here。看起來很簡單,問題是每個tile動畫必須獨立於其他動畫,以允許算法和所有內容繼續運行並啓動不同的動畫。
那麼實現我要找的結果的最好方法是什麼?我應該爲每個動畫打開一個不同的線程,還是爲每個單元格預先製作線程? 這對於應用程序來說會是一種矯枉過正,因爲可以有多達1000個單元,因此可以有近1000個執行動畫的線程。
我想我可能會遇到的另一個問題是,它可能會發生這樣的事實,一個單元格將開始其顏色衰落動畫,然後將不得不重新啓動,我不希望兩個動畫在同一時間去(只一個線程同時爲同一個單元格執行動畫)。
我希望我已經足夠清楚我想要達到的目標,如果有人有任何想法或想法,它可以幫助我實現我的項目。
「我希望我已經清楚了我想要達到的目標......」直到現在編輯10分鐘後,我甚至可以理解你發佈的那些信件。所以不行。技術學位第四年的人應該能夠找到他們的換檔鍵,並在每個句子的開頭應用一次,並且每次使用「I」這個詞。它也不利於使用* wanna *等俚語詞彙。這些是國際論壇,很多人不會理解這個詞。那些確實會認爲你是愚蠢的,不值得他們的關注和時間。請多加小心。 – 2011-03-26 12:31:52