《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于OpenGL和MFC的三維建模教學實踐與改革
基于OpenGL和MFC的三維建模教學實踐與改革
來源:微型機與應用2014年第3期
張志華1,程耀東2,張新秀1
(1.蘭州交通大學 測繪與地理信息學院,甘肅 蘭州 730070; 2.蘭州交通大學 土木工程學院,
摘要: 針對可視化程序設計教學過程中顯現的問題,提出相應的教學改進方法。以MFC框架為基礎,通過加強上機實踐、改進多媒體教學、引入實例及制作教學演示程序,引導學生學習OpenGL可視化函數工具包,結合地理信息系統專業學生的培養方式,為學生制定學習和實踐平臺,并開發出相應的教學演示系統,很好地輔助課堂教學,采用教學互動方式,開拓了學生的思維模式,顯著提高教學質量。
Abstract:
Key words :

摘  要: 針對可視化程序設計教學過程中顯現的問題,提出相應的教學改進方法。以MFC框架為基礎,通過加強上機實踐、改進多媒體教學、引入實例及制作教學演示程序,引導學生學習OpenGL可視化函數工具包,結合地理信息系統專業學生的培養方式,為學生制定學習和實踐平臺,并開發出相應的教學演示系統,很好地輔助課堂教學,采用教學互動方式,開拓了學生的思維模式,顯著提高教學質量。
關鍵詞: OpenGL;MFC;教學實踐;教學改革

 可視化編程技術已經廣泛應用在各行各業中[1-4],對于地理信息系統專業學生也必須緊跟時代潮流,將可視化程序設計掌握并運用到實踐學習中去。本校將OpenGL三維可視化程序設計作為一門必修課程列入教學計劃中。如何培養學生學習本專業圖形的生成算法及顯示流程,如何利用VC與OpenGL結合進行學生程序開發能力的培養,并在有限的學時條件下,達到理想的教學目標,不是一件易事。
1 OpenGL教學中存在的問題
1.1 VC++平臺環境不熟悉

 傳統的教學平臺選擇VC++控制臺應用程序作為演示平臺,該平臺程序設計簡單,易于理解,適合有C語言功底的學生學習。但該平臺可視化演示效果差,針對復雜的地理場景顯示顯得不夠寬泛,缺乏可操作性,人機交互能力有限,教學實踐環節不夠科學,不夠系統[5]。
1.2 OpenGL庫函數眾多,難于掌握
 OpenGL核心庫中包含115個函數(前綴為gl),實用庫中包含43個函數(前綴glu),輔助庫中包含31個函數(前綴aux),工具庫中包含30多個函數(前綴glut)[2]。每個庫中的函數都有很多的重載形式,這往往將需要掌握的庫函數加倍,在有限的課堂教學時間內,想要掌握OpenGL庫中的眾多函數,會顯得力不從心。從而打擊學生的學習興趣,不利于教學。
1.3 部分關鍵函數參數個數多,不易理解
 OpenGL的很多庫函數所攜帶的參數往往有很多,且不易掌握。例如,投影函數glFrustum(GLdouble left,GLdouble Right,GLdouble bottom,GLdouble top,GLdouble near,GLdouble far)帶有6個參數,如果不配合圖解,很難讓學生理解并掌握它的使用。再比如二維紋理定義的函數void glTexImage2D(GLenum target,GLint level,GLint components,GLsizei width,glsizei height,GLint border,GLenum format,GLenum type,const GLvoid*pixels),相對于投影函數來說,二維紋理定義函數就顯得更加復雜,直接講解,難以理解其參數含義,不易掌握,從而產生畏難負面效應,不利于學生學習。
1.4 教學缺乏應用背景,學習積極性不高
 從學生的角度出發,學生們只會根據教學內容進行編程,缺乏對相關函數與算法的直觀展示,不能有效地吸引學生主動去學習。再者,大多數同學不重視三維圖形可視化方面的學習,他們認為將來工作不會涉及關于三維圖形設計方面的內容,從而學習積極性不高,缺乏學習的主動性[4]。
2 教學方法改革與改進
2.1 選用MFC作為開發與講解框架

 通常情況下,OpenGL以及計算機圖形學方面的教學都采用C/C++語言編寫,程序設計簡單,但可視化以及人機交互效果較差,學生掌握起來較困難。MFC(微軟基礎類庫)是VC++平臺下程序開發框架,該框架可以構建基于對話框的應用程序、基于單文檔的應用程序以及基于多文檔的應用程序,通過使用MFC框架下的諸多可視化控件進行編程,可以迅速建立界面美觀、通俗易懂、便于交互操作的程序框架,其典型的消息事件驅動模式[6-7],如菜單消息映射、基本控件消息映射(按鈕等),增加了人機交互操作,提升學生的學習興趣,大大提高學生的動手能力,通過不斷的探索人機交互操作,增進學習效率。
2.2 加強上機實踐輔導
 OpenGL與MFC進行三維圖形可視化程序設計,除去課堂教學外,應將大量的教學學時應用在上機實踐環節上,通過布置相關的圖形演示程序及圖形顯示算法,一方面培養學生熟悉VC++編程環境,熟悉MFC與OpenGL如何聯合進行程序開發;另一方面,通過推敲相關代碼,培養學生的實踐動手能力。
2.3 引用實例進行課堂教學
 課前搜索一些與本節課程有關的應用實例,如三維立體動畫、相關三維建模可視化軟件等[8],在具體講解過程中,引入實例,既能提高學生們的學習興趣,又幫助他們提高對本節課的內容理解。如打開Google SketchUp三維建模軟件,在其中演示物體的繪制、物體的平移、旋轉、縮放等操作,幫助他們學習glVertex()、glTranslate()、glRotate()等函數,并理解函數所帶參數的意義,啟發學生們去思考。
2.4 制作教學課件及相應的演示程序
 由于計算機軟硬件的飛速發展,傳統的板書式教學已經向多媒體教學方向發展,而OpenGL教學又與計算機程序相關聯,更加體現出多媒體教學的優越性,圖形顯示直觀、易懂,符合學生們的好奇心理。將OpenGL講解內容按前后章節,利用powerpoint制作出精美的教學課件,并配以程序演示,從很大程度上吸引學生的注意力,并且,課件后附具體的作業,將其拷貝給每一位學生,在課后業余時間依然可以隨時打開課件內容學習,為學好OpenGL提供便利。
2.5 采用教學互動,提高學生的空間想象能力與語言表達
 在一段學時的課堂教學完成后,布置一次大作業,要求學生們基于MFC框架,自由發揮,對現實世界的感興趣物體進行三維建模,要求寫出具體的程序代碼、建模思路及主要用到的OpenGL函數,并制作PPT在課堂上進行教學互動,這無形中提高了教學質量,達到了良好的教學目的。同時,在編寫代碼時,提高學生的空間想象力與邏輯思維能力,在教學互動中,又能培養其語言表達能力。
3 基于MFC的教學演示程序
 為幫助C++功底較淺的學生學習,將基礎的MFC與OpenGL程序框架搭建好,供日后學生自己向其中添加OpenGL建模代碼,并基于此編寫所有圖形顯示程序。以投影變換為例,圖1為教學演示投影函數詳解,圖中可以直觀展示glFrustum函數透視投影場景的效果及各參數的含義,右邊是該函數所攜帶的6個參數。根據圖解,學生們很容易就可以掌握這個函數的使用,圖2亦同理。

 再以圖3為例,在顏色教學過程中,用到了MFC中滑塊、滾動條、旋鈕、編輯框等控件,通過三色分量RGB的任意取值,在右邊的顯示框中,動態顯示當前取值顏色,一方面使學生們熟悉MFC常用控件的使用,另一方面,掌握OpenGL中有關顏色操作函數,將MFC與OpenGL的聯合更加深入易懂。

 

 

    通過這樣一些教學改革,啟發學生進行創造性思維,在教學互動過程中,同學們都紛紛拿出自己所建的模型進行討論,達到了良好的教學效果。從改革教學方法、教學課件入手,利用實例吸引學生注意力,不斷提高本課程的教學質量。
參考文獻
[1] 劉煜崗,蔡洪斌.《計算機圖形學》實驗教學研究與探討[J].實驗科學與技術,2012,10(6):262-264.
[2] RICHARD S. WRIGHT, J R. Benjamin Lipchak Nicholas haemel, 張琪,付飛(譯).OpenGL超級寶典[M].北京:人民郵電出版社,2011.
[3] BO CHEN,HARRY H.Cheng.Interpretive OpenGL for Computer Graphics[J]. COMPUTERS &GRAPHICS, 2005,29:331-339.
[4] 楊斌.OpenGL在計算機圖形學教學中的應用研究[J].滁州學院學報,2012,14(5):105-107.
[5] 張燦.基于OpenGL實驗平臺的計算機圖形學教學改革研究[J].電腦知識與技術,2012,8(32):7826-7827.
[6] 賀少華,吳新躍.基于VC++和OpenGL的大型機械裝置虛擬教學訓練系統的開發[J].系統仿真學報,2009,21(4):1059-1062.
[7] 黃燕挺.三維控件在教學實驗中的應用研究[J].計算機與數字工程,2011,39(8):192-195.
[8] 楊長強,鄭永果.“計算機圖形學”教改實踐[J].計算機教育,2010(24):53-56.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 在线视频中文 | 一区二区三区在线播放视频 | 成人国产一区二区 | 国产成人精品无缓存在线播放 | 成人久久久观看免费毛片 | avav在线看| 99精品高清不卡在线观看 | 99久久精品国产国产毛片 | 久久久毛片免费全部播放 | 黄a免费| 好妞操 | 正在播放国产一区 | 精品国产v| 九九干 | 精品久久久久久中文字幕一区 | 香蕉久久精品国产 | 国产人成亚洲第一网站在线播放 | 风流慈禧一级毛片在线播放 | 国产成人精品免费视频大全软件 | 国产不卡精品一区二区三区 | 日本一本久 | 一级中国乱子伦视频 | 在线精品国产成人综合第一页 | 日韩精品网址 | 成 人 亚洲 综合天堂 | 中国日本高清免费视频网 | 国产1000部成人免费视频 | 美欧毛片 | 国产在线精品二区韩国演艺界 | 男人的天堂免费视频 | 99re66热这里只有精品免费观看 | 成人国产第一区在线观看 | 亚洲综合第一页 | 香蕉伊人网 | 国产一区二区三区在线观看精品 | 久久久久久久国产a∨ | 99视频免费 | 黄色aaa毛片| 国产精品大片天天看片 | 亚洲国内精品 | 亚洲综合日本 |