999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Matlab若干經典算法的可視化研究

2018-04-11 01:56:54湖南科技學院吳子凌
電子世界 2018年6期
關鍵詞:按鈕可視化動畫

湖南科技學院 王 濤 韓 芹 文 博 吳子凌

1.引言

隨著信息的增長和社會的發展,可視化技術有著越來越重要的意義。通過可視化技術可以清晰快速地獲取信息和知識,并更有助于學生的思考。可視化教育已經成為一個新興的研究領域[1]。在大學的課程中,算法課程是屬于比較抽象、復雜的課程,又是計算機專業的一門實踐性和綜合性很強的核心課程。為了在有限的課堂教學能獲得更好的教學效果,提高學生學習算法的積極性和主動性,本文采用了MATLAB軟件的GUI工具設計并實現了一套若干經典算法的可視化教學平臺,有助于學生對于算法的理解與應用,提高教學質量。

2.建立算法可視化功能模型

通過對學習《數學建模》、《算法設計與分析》、《數據結構》等專業核心課程的學生和教授這些課程的老師分別進行了調研,了解哪些算法對于學生來說學習時理解過于困難,而對于老師而言哪些算法在課堂上講解時效果不是很理想。結合這兩個方面,本系統選取了深度優先搜索算法、廣度優先搜索算法、Dijkstra算法、Prim算法、堆排序算法、快速排序算法、KMP算法、二分查找算法、動態規劃算法、BP神經網絡算法十個經典、有代表性的、難以理解的算法進行可視化研究。其中,每個算法作為一個模塊單獨進行設計,每個算法模塊包括的功能有算法簡介、算法分析、代碼實現、動畫演示、練習與提高和實際應用。

3.面向對象的GUI設計流程

Matlab中的GUIDE功能包括進行GUI面板設計和GUI組件回調程序編程。用戶只需通過鼠標將對象拖拽到目的區域即可快速地構建出GUI[2]。本文利用圖形用戶界面開發環境GUIDE,方便、快捷地創建了算法可視化平臺的GUI。該平臺既能向用戶展示算法的思想和方法,又能將算法分析過程以人機交互的動態方式演示出來,具有界面友好、操作簡單的特點。

GUI設計流程如下:(1)分析功能需求,明確設計任務。(2)繪出基本的用戶界面草圖,從學生和教師的角度進行審查。(3)打開MATLAB軟件,點擊工具欄中的GUIDE,制作GUI用戶操作界面。(4)添加所需控件,利用屬性編輯對話框進行屬性設置,完成界面的布局。(5)添加控件的回調函數,點擊運行,生成所需界面GUI,保存在FIG和M文件中[3]。

4.算法可視化平臺的實現

4.1 算法可視化平臺主界面

用戶進入主界面就能一目了然的看到十個經典算法目錄。每個算法對應一個按鈕,用戶只需點擊各個算法的按鈕即可進入到相應的算法可視化子界面。該界面主要由GUIDE工具集中的按鈕、坐標軸、靜態文本框等控件實現。在Matlab命令窗口中輸入GUIDE,打開界面編輯器(Layout Editor),從界面編輯器的左側控件中,選擇1個坐標軸(Axes)控件,1個文本標簽(Static Text)控件,10個按鈕(Push Button)控件,通過布置這些控件的位置和設置它們的屬性,完成主界面的設計。

4.2 算法可視化平臺子界面

本文以深度優先搜索算法子界面為例,說明其主要功能和實現方法。用戶點擊“深度優先搜索算法”按鈕就進入到如圖1所示的子界面。子界面包括算法簡介、算法分析、代碼實現、動畫演示、練習與提高以及實際應用6個按鈕,其設計過程與主界面的設計過程是類似的。用戶點擊“算法簡介”按鈕就會進入算法主要思想的顯示界面。其實現步驟如下:(1)首先將元件Axes平鋪于底部作為背景圖片,接著調整相應檢查器的OuterPosition設置其屬性值,使背景圖片以居中的效果顯示。(2)標題欄的設置。使用元件Static text,調整BackgroudColor的屬性,使顯示效果與背景更相符合。(3)文字面板的設置。以元件Panel作為面板部分,將元件Editable text覆蓋其上,文字部分的主體將顯示其中。(4)返回功能按鈕的制作。使用元件Button,重寫相應檢查器中的Title屬性,并編寫Callback函數,實現頁面跳轉功能。

圖1 深度優先搜索算法子模塊界面

用戶了解了算法的思想后,點擊“算法分析”按鈕進入算法分析界面查看算法實現的具體步驟,點擊“代碼實現”按鈕可以查看算法范例的程序代碼實現。為了進一步加深對算法的理解,用戶可以點擊“練習與提高”按鈕,針對給出的習題進行練習。同時,對于所學的算法如何學以致用,用戶還可以點擊“實際應用”按鈕進入相應界面,開闊視野,提高實際應用的能力。上述界面與算法簡介界面使用的控件和實現步驟都是相類似的。不同在于,每個界面對應顯示的文本內容不同而已。

本文具有特色的設計是實現了算法的動畫演示,有助于學生對于算法的理解與應用。用戶點擊“動畫演示”按鈕進入到如圖2所示界面。用戶在觀看動畫演示時可以通過點擊前進、后退、暫停等按鈕對算法實現的過程可以看得更為清楚,理解得更為透徹。

圖2 動畫演示

本文采用Flash動畫與MATLAB相結合來實現算法動畫演示功能。實現具體步驟如下:(1)使用Photoshop對圖像素材進行優化處理。(2)分析對象的構成及動態對象包括位移,節點和線段顏色的變化等,設置圖層的層疊關系。(3)設置場景舞臺的版面大小,把背景色設置為綠色,動畫以13幀播放效果最佳,將之前準備的素材文件逐一導入元件庫中。(4)利用補間動畫原理制作中間各幀,從而使動畫從一個關鍵幀自然過渡到另外一個關鍵幀。這里主要通過元素文字的移動變化來體現的。(5)通過在不同按鈕上定義不同的動作腳本來控制動畫的運行狀態[4],如:在停止的按鈕上輸入:on (release) {_root.mc.stop();};在快退的按鈕上輸入:on(release) {_root.mc.prevFrame();}表示回到動畫的上一楨;在快進的按鈕上輸入:on (release) {_root.mc.nextFrame(); }。

5.結語

本文利用Matlab軟件開發了一款包含十種經典的、具有代表性的算法可視化平臺。用戶通過該平臺不僅可以了解這十種算法的具體思想、實現步驟和實際應用,還可以通過動畫演示的方式學習和掌握算法的實現過程。該平臺打破了傳統學習算法的方式讓算法真正的“動起來”,同時也推進了討論式教學、案例教學、網課等教學方法和合作式教學方式,提高學生自主學習和獨立研究的能力。

[1]唐棣,郭禾.計算機圖形學算法可視化教學研究與實踐[J].電化教育研究,2009(01):93-98.

[2]秦襄培.MATLAB圖像處理與界面編程寶典[M].北京:電子工業出版社,2009.

[3]羅華飛.MATLAB GUI設計學習手記[M].北京:北京航空航天大學出版社,2011.

[4]余雨.算法可視化軟件設計中關鍵問題的研究[D].安徽理工大學,2016.

猜你喜歡
按鈕可視化動畫
這些按鈕能隨便按嗎?
當你面前有個按鈕
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
做個動畫給你看
動畫發展史
基于CGAL和OpenGL的海底地形三維可視化
我的動畫夢
文苑(2019年22期)2019-12-07 05:28:56
“融評”:黨媒評論的可視化創新
傳媒評論(2019年4期)2019-07-13 05:49:14
我是動畫迷
學生天地(2016年9期)2016-05-17 05:45:06
主站蜘蛛池模板: 国产视频入口| 91外围女在线观看| 精品视频91| 国产精品人成在线播放| 性欧美在线| 日韩一区精品视频一区二区| 亚洲va在线∨a天堂va欧美va| 国产区福利小视频在线观看尤物| 成人av手机在线观看| 免费在线不卡视频| 亚洲日本精品一区二区| 91黄视频在线观看| 狠狠综合久久久久综| 色综合天天综合中文网| 老色鬼欧美精品| 欧美日韩高清在线| 一边摸一边做爽的视频17国产| 国产午夜精品一区二区三区软件| 国产成人亚洲精品无码电影| 乱码国产乱码精品精在线播放| 亚洲无码高清一区二区| 亚洲中文字幕无码爆乳| 婷婷伊人久久| 午夜视频免费一区二区在线看| 亚洲伦理一区二区| 国产精品亚洲日韩AⅤ在线观看| 亚洲有无码中文网| 国产不卡网| 91伊人国产| 91无码人妻精品一区| 国产精品专区第1页| 国产精品高清国产三级囯产AV| 永久免费精品视频| 免费一级毛片不卡在线播放| 免费aa毛片| 亚洲中文字幕久久精品无码一区| 欧美成人a∨视频免费观看| 18禁黄无遮挡免费动漫网站| 91 九色视频丝袜| 日韩精品久久无码中文字幕色欲| 国产成人h在线观看网站站| 欧美亚洲第一页| 乱人伦视频中文字幕在线| 看国产毛片| 亚洲欧美日韩成人高清在线一区| 欧洲高清无码在线| 一本综合久久| aa级毛片毛片免费观看久| 欧美日韩在线亚洲国产人| 无码专区在线观看| 国产乱子伦一区二区=| 日本亚洲国产一区二区三区| 四虎影视无码永久免费观看| 久久精品免费看一| 国产人免费人成免费视频| 一本一道波多野结衣av黑人在线| 国产高潮视频在线观看| 激情六月丁香婷婷| 午夜成人在线视频| 国产中文一区a级毛片视频| 久久激情影院| 国产精品无码AV片在线观看播放| 青青热久免费精品视频6| 久久免费观看视频| 丁香五月激情图片| 久久www视频| 久久国产精品波多野结衣| 久久久久久久久久国产精品| 色视频国产| 国产欧美成人不卡视频| 真人高潮娇喘嗯啊在线观看| 亚洲欧美日韩中文字幕一区二区三区| 亚洲首页在线观看| 精品91自产拍在线| 欧美激情视频二区三区| 日韩小视频网站hq| 国产日韩精品一区在线不卡| 国产美女在线免费观看| 亚洲欧美人成人让影院| 四虎免费视频网站| AV不卡无码免费一区二区三区| 国产高清精品在线91|