公務(wù)員期刊網(wǎng) 精選范文 計算機(jī)圖形學(xué)課程范文

計算機(jī)圖形學(xué)課程精選(九篇)

前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的計算機(jī)圖形學(xué)課程主題范文,僅供參考,歡迎閱讀并收藏。

計算機(jī)圖形學(xué)課程

第1篇:計算機(jī)圖形學(xué)課程范文

關(guān)鍵詞:計算機(jī)圖形學(xué);教學(xué)方法;上機(jī)實(shí)踐

計算機(jī)圖形學(xué)是伴隨著計算機(jī)及其他設(shè)備的發(fā)展而產(chǎn)生的,是一門研究怎樣利用計算機(jī)表示、生成、處理和顯示圖形的原理、算法、方法和技術(shù)的學(xué)科[1-2]。目前,計算機(jī)圖形學(xué)已經(jīng)成為計算機(jī)學(xué)科中發(fā)展最活躍、應(yīng)用最廣泛的分支之一,成為許多計算機(jī)從業(yè)人員的必備素質(zhì)之一,也是計算機(jī)及相關(guān)專業(yè)本科生的一門專業(yè)選修課。該課程在我校已經(jīng)開設(shè)了多年,其教學(xué)任務(wù)是本著理論與實(shí)踐相結(jié)合的原則,以基本概念、算法原理和實(shí)踐技術(shù)為主線,使學(xué)生掌握計算機(jī)圖形生成與處理技術(shù)的基礎(chǔ)知識、基本原理和方法,培養(yǎng)學(xué)生的實(shí)際動手能力。然而,歷年的教學(xué)工作中發(fā)現(xiàn),由于該課程學(xué)科內(nèi)容豐富、理論難度大、實(shí)踐性強(qiáng),且作為專業(yè)限選課學(xué)時又有限,導(dǎo)致了學(xué)生對所學(xué)內(nèi)容不易掌握,疲于應(yīng)付,甚至產(chǎn)生學(xué)生厭學(xué)、教學(xué)低效等現(xiàn)象。

因此,如何提高學(xué)生的學(xué)習(xí)興趣,增加課堂信息量,解決課時少與內(nèi)容多的矛盾、理論與實(shí)踐的矛盾,是計算機(jī)圖形學(xué)教學(xué)工作中一個非常值得思考的問題。本文面向計算機(jī)科學(xué)與技術(shù)專業(yè),在分析計算機(jī)圖形學(xué)教學(xué)中存在問題的基礎(chǔ)上,針對該課程的學(xué)科特點(diǎn)和學(xué)生的特點(diǎn),根據(jù)筆者近年來在教學(xué)實(shí)踐中的親身體會,探討一種新的教學(xué)思路和方法。

1計算機(jī)圖形學(xué)的學(xué)科特點(diǎn)

計算機(jī)圖形學(xué)是一門理論和實(shí)踐兼顧、綜合性很強(qiáng)的交叉學(xué)科,涉及內(nèi)容和應(yīng)用領(lǐng)域都很廣泛。它涵蓋了計算機(jī)科學(xué)、數(shù)學(xué)、物理學(xué)等其他相關(guān)學(xué)科的知識,學(xué)科交叉繁雜,且整個學(xué)科的發(fā)展日新月異。同時,該課程對高等數(shù)學(xué)、線性代數(shù)等基礎(chǔ)數(shù)學(xué)有較高的要求,以數(shù)據(jù)結(jié)構(gòu)、計算機(jī)高級語言、圖形基本原理等為先導(dǎo)課程。因此,要將這樣一門課的內(nèi)容保質(zhì)保量地傳授給學(xué)生,不是一件容易的事,需要積極探討新的教學(xué)方法和教學(xué)思路。

2教學(xué)中存在的問題

在教學(xué)實(shí)踐中,筆者發(fā)現(xiàn)該課程的教學(xué)問題主要體現(xiàn)在以下幾個方面:

1) 理論基礎(chǔ)要求高,教學(xué)效果差。計算機(jī)圖形學(xué)理論性強(qiáng),部分算法抽象且以數(shù)學(xué)為依托,教學(xué)過程中過分強(qiáng)調(diào)課程的數(shù)學(xué)基礎(chǔ),側(cè)重于算法原理的推導(dǎo),而多數(shù)學(xué)生數(shù)學(xué)功底薄弱,故在學(xué)習(xí)過程中表現(xiàn)出畏難情緒;同時,其先修課程都是在低年級開設(shè)的,容易遺忘,而在計算機(jī)圖形學(xué)的課堂上又不可能花太多的時間進(jìn)行先修課程的復(fù)習(xí),從而使其成為部分學(xué)生難以逾越的障礙。

2) 教學(xué)內(nèi)容多,知識點(diǎn)分散。計算機(jī)圖形學(xué)涉及的方法原理很多,教學(xué)內(nèi)容易面面俱到,導(dǎo)致學(xué)生只掌握了分散的知識點(diǎn),沒有形成一條完整的知識鏈,學(xué)生對所學(xué)知識無所適從,失去學(xué)習(xí)的目標(biāo),極大影響了學(xué)生的學(xué)習(xí)熱情;同時,教學(xué)內(nèi)容只局限于經(jīng)典的算法原理,面向?qū)W科前沿動態(tài)的內(nèi)容涉及較少,不利于開闊學(xué)生視野,激發(fā)他們自主學(xué)習(xí)的意識和興趣。

3) 實(shí)驗(yàn)課比例較小且實(shí)踐環(huán)節(jié)滯后。計算機(jī)圖形學(xué)也是一門實(shí)踐性很強(qiáng)的學(xué)科[3-4],上機(jī)實(shí)踐是培養(yǎng)學(xué)生動手能力的主要手段,也是學(xué)好這門課的必要手段。但是,由于總課時的壓縮,實(shí)驗(yàn)課時很少,僅提供8學(xué)時,使原本很重要的實(shí)踐活動變成了搭配;上機(jī)實(shí)習(xí)平臺采用的是目前已不作為主要開發(fā)工具的Turbo C,致使學(xué)生不能在實(shí)驗(yàn)中獲得將來就業(yè)環(huán)境下需要掌握的編程知識,上機(jī)興趣不高,同時大部分學(xué)生本身的編程能力也不強(qiáng),最終導(dǎo)致學(xué)生喪失編程的興趣和能力。

4) 學(xué)生積極性不高。計算機(jī)圖形學(xué)開設(shè)在大三上學(xué)期,大部分同學(xué)把精力用在考研和考公務(wù)員等方面,而這門課不是考研的必考課,學(xué)分也不高,因此,大多數(shù)同學(xué)認(rèn)為圖形學(xué)不重要,學(xué)習(xí)的積極性不高,整個學(xué)習(xí)過程都很被動。

3教學(xué)思路探討

計算機(jī)圖形學(xué)的教學(xué)目標(biāo)之一,就是通過本課程的學(xué)習(xí),使學(xué)生對計算機(jī)圖形學(xué)有一個全面、感性的認(rèn)識,理解并掌握部分經(jīng)典算法,了解當(dāng)前的研究熱點(diǎn)。根據(jù)這一實(shí)際要求,提出了計算機(jī)圖形學(xué)課程的總體教學(xué)思路。在教學(xué)中,以基本理論和算法原理為主線,以Turbo C、OpenGL等軟件為載體,對圖形學(xué)內(nèi)容進(jìn)行整體優(yōu)化,加以創(chuàng)新處理,采用多種教學(xué)方式,加強(qiáng)理論與實(shí)踐的結(jié)合,通過正確引導(dǎo),激發(fā)學(xué)生的興趣,挖掘?qū)W生的潛能,最終培養(yǎng)學(xué)生的邏輯思維能力和實(shí)際動手能力。以下筆者將根據(jù)自身的教學(xué)實(shí)踐來闡述該課程教學(xué)過程中的認(rèn)識和做法。

3.1上好緒論課,激發(fā)學(xué)生的學(xué)習(xí)興趣

教學(xué)過程中調(diào)查發(fā)現(xiàn),大多數(shù)學(xué)生對計算機(jī)圖形學(xué)采取的是一種敬而遠(yuǎn)之的態(tài)度。首先,他們通過計算機(jī)圖形學(xué)在娛樂、廣告等領(lǐng)域的廣泛應(yīng)用充分感受到該課程的生動有趣及實(shí)用性,對該課程飽含熱情;而與此同時,在他們的印象中,計算機(jī)圖形學(xué)涉及學(xué)科很多,尤其數(shù)學(xué)公式很多,很多內(nèi)容難以理解和掌握,故他們又對學(xué)好這門課充滿懷疑。也正是這種期望與現(xiàn)實(shí)的失衡成為打擊學(xué)生學(xué)習(xí)熱情的“元兇”。因此,我們應(yīng)該重視緒論課,并以此作為突破口,通過查閱大量資料,結(jié)合目前圖形學(xué)的發(fā)展動向,根據(jù)所講授內(nèi)容,充分利用多種教學(xué)手段,將圖形學(xué)知識融匯貫通起來,讓學(xué)生在不知不覺中了解并接受計算機(jī)圖形學(xué),解除他們的疑惑,鼓舞他們的熱情。如在介紹圖形學(xué)在虛擬現(xiàn)實(shí)的應(yīng)用時,可以插入一段視頻,模擬人在虛擬場景中漫步,不但可以講明具體應(yīng)用,而且學(xué)生易于接受,印象深刻。

3.2教學(xué)內(nèi)容

計算機(jī)圖形學(xué)內(nèi)容深而廣,知識更新快,教學(xué)工作者需要在有限的學(xué)時內(nèi),即兼顧基礎(chǔ)知識又能反映計算機(jī)圖形學(xué)的研究進(jìn)展,因此,教學(xué)過程中,在教學(xué)內(nèi)容上要注意以下幾點(diǎn):

1) 根據(jù)學(xué)生的接受程度,精選核心內(nèi)容,壓縮或屏蔽部分知識,使學(xué)生專注于必要知識的學(xué)習(xí),從而提高教學(xué)效率和教學(xué)質(zhì)量。我們的教學(xué)內(nèi)容主要包括:圖形變換、光柵圖形學(xué)、幾何造型、圖形裁剪及真實(shí)感圖形繪制。其中,前兩部分相比較而言,是基礎(chǔ),內(nèi)容較簡單,講解要深入一些,保證該部分理論具有“點(diǎn)”的深度,如幾何變換,包括;平移、旋轉(zhuǎn)、縮放等變換,以及幾何變換的矩陣表示形式和復(fù)合變換的多矩陣組合形式,此外還要說明齊次坐標(biāo)引入的必要性;幾何造型中,尤其是曲線曲面造型部分,要根據(jù)學(xué)生的實(shí)際情況來決定內(nèi)容的深淺。對于曲面,難度較大,理解起來比較困難,不適合本科生的學(xué)習(xí),故其生成算法完全被屏蔽;而曲線的生成算法雖較曲面易理解,但也不能過于深入,這里只重點(diǎn)介紹B樣條曲線和貝塞爾曲線的生成技術(shù)和特點(diǎn),并且講解過程中,結(jié)合現(xiàn)實(shí)生活的例子,引入具體應(yīng)用,如在汽車、飛機(jī)外形設(shè)計中的應(yīng)用;裁減計算,也是計算機(jī)圖形學(xué)的核心,這里重點(diǎn)講解直線段的裁剪算法和多邊形裁剪算法;對于真實(shí)感圖形繪制部分,由于涉及的知識面廣,理論深,同樣不適合本科生的學(xué)習(xí),故這一部分內(nèi)容只介紹一些基本概念。總之,上述的內(nèi)容涉及許多概念和算法,要求學(xué)生把重點(diǎn)放在基本概念和算法的思想上,不強(qiáng)調(diào)學(xué)生去掌握和實(shí)現(xiàn)算法的具體細(xì)節(jié),但要求掌握幾個經(jīng)典的算法。

2) 注重基礎(chǔ),強(qiáng)調(diào)基本原理和基本概念的理解,同時還要突出重點(diǎn)、重視應(yīng)用。對一些要求學(xué)生掌握的經(jīng)典算法,如Bresenhan算法,掃描線填充算法等,要重點(diǎn)講授,仔細(xì)分析,強(qiáng)調(diào)其基本原理和基本思想,并在學(xué)生理解掌握的基礎(chǔ)上,結(jié)合具體實(shí)例的剖析,告訴學(xué)生理論和實(shí)際應(yīng)用的切入點(diǎn),給予學(xué)生理論結(jié)合實(shí)際的基點(diǎn),激發(fā)學(xué)生興趣,逐步培養(yǎng)他們的科研能力。

3) 制定教學(xué)內(nèi)容時還應(yīng)跟上時代步伐,介紹一些最新的學(xué)科前沿和研究進(jìn)展,一方面增加理論教學(xué)的趣味性,另一方面使學(xué)生對學(xué)科前沿有一個概念性的直觀理解,增加學(xué)習(xí)興趣,拓寬他們的知識面,從而為學(xué)生從事該領(lǐng)域的應(yīng)用開發(fā)或研究工作打下良好基礎(chǔ)。

3.3理論教學(xué)

計算機(jī)圖形學(xué)的教學(xué)應(yīng)采取課堂講授為主、上機(jī)實(shí)驗(yàn)為輔、以學(xué)生為主體、教師為主導(dǎo)的教學(xué)模式。為達(dá)到教學(xué)效果,理論教學(xué)應(yīng)從以下幾方面加強(qiáng):

1) 加強(qiáng)可視化教學(xué)。

計算機(jī)圖形學(xué)的很多算法理論性很強(qiáng),數(shù)學(xué)模型也比較抽象,單純采用文字?jǐn)⑹龈揭造o態(tài)圖片的PPT形式的教學(xué)手段,教學(xué)效果并不理想,尤其是對于一些經(jīng)典或復(fù)雜的算法,效果更差。因此,應(yīng)充分利用目前流行的課件制作工具,如Flash、OpenGL等,制作經(jīng)典算法的仿真演示,使晦澀難懂的原理公式變成栩栩如生的畫面。筆者在講授經(jīng)典算法時,將其原理用Flash做成動畫插入到PPT中,使學(xué)生可以直觀感受到算法的效果,提高了課堂氣氛,增加了學(xué)生的學(xué)習(xí)興趣。

2) 注重啟發(fā)式教學(xué)。

平鋪直敘、滿堂灌的教學(xué)方法只會讓學(xué)生感到枯燥、乏味,從而影響他們的學(xué)習(xí)積極性和主動性。尤其在講授以數(shù)學(xué)知識為支撐的算法時,切忌繁瑣復(fù)雜的公式推導(dǎo)和連篇累牘的算法分析,避免學(xué)生的煩躁情緒,而應(yīng)采用啟發(fā)式教學(xué)方法,通過“提出問題同學(xué)解答問題分析問題解決問題分析解決方法的優(yōu)缺點(diǎn)”的思路,引導(dǎo)學(xué)生思考,層層深入、逐步展開,充分調(diào)動學(xué)生的學(xué)習(xí)積極性。例如在講解多邊形裁剪時,首先啟發(fā)學(xué)生多邊形是由線段組成的,是否可以將線段裁剪方法用于多邊形裁剪?學(xué)生點(diǎn)點(diǎn)頭,然后接著問,那么是否適用呢?學(xué)生進(jìn)入了思考的狀態(tài),這時借助課件給出采用線段裁剪算法對多邊形進(jìn)行裁剪得到的裁剪結(jié)果,并給出一個否定的答案,繼續(xù)提問為什么會不適用?引導(dǎo)學(xué)生進(jìn)一步思考,然后進(jìn)行分析,給出不適用的原因,在線段裁剪算法中,是把一條線段的兩個端點(diǎn)孤立地加以考慮,而多邊形是由一些有序的線段組成,要求裁剪后的多邊形仍保持原多邊形各邊的連接順序。既然這個算法不適用,就應(yīng)該尋找一種有效的裁剪算法,接著引入多邊形的逐邊裁剪算法。介紹完逐邊裁剪算法后,繼續(xù)啟發(fā)學(xué)生思考,這種算法是否適用于所有的多邊形?學(xué)生會給出肯定的回答,這時進(jìn)一步啟發(fā),如果是凹多邊形,逐邊裁減算法是否適用,如果不適用,如何改進(jìn)?這可能是學(xué)生沒有預(yù)料到的,他們會對接下來的內(nèi)容表現(xiàn)出濃厚的學(xué)習(xí)興趣,進(jìn)一步分析,當(dāng)多邊形為凹多邊形,且裁剪后的多邊形有兩個或多個分離部分的時候,由于只有一個輸出頂點(diǎn)表,表中最后一個頂點(diǎn)總是連著第一個頂點(diǎn),會出現(xiàn)多余連線的現(xiàn)象,這就是下一步需要改進(jìn)的地方,而邊界裁剪算法則可以避免這一問題。再如,在講解直線段的繪制時,首先讓學(xué)生自己設(shè)計一個算法,這時幾乎全部的學(xué)生都會給出直線段生成的普通算法,即根據(jù)直線方程,通過設(shè)置x取值范圍,求出屏幕的一系列點(diǎn),然后提問學(xué)生,從算法效率角度來看,普通算法存在怎樣的問題,引導(dǎo)學(xué)生思考,最后引入直線段的繪制算法。因此,啟發(fā)式教學(xué)方法可以給學(xué)生主動思維和積極思維的空間,將學(xué)生一步步帶入算法設(shè)計中,有效提高教學(xué)質(zhì)量。

3) 做好課前回顧。

以目前課程開設(shè)時間和學(xué)生的實(shí)際情況,要求學(xué)生課后復(fù)習(xí)課前預(yù)習(xí)似乎是強(qiáng)人所難。為了加強(qiáng)知識的連貫性,鞏固所學(xué)知識,應(yīng)該在課前拿出較短時間對上堂課的學(xué)習(xí)內(nèi)容進(jìn)行簡單回顧,然后過渡到新的教學(xué)內(nèi)容。

3.4實(shí)踐教學(xué)

實(shí)踐教學(xué)是理論教學(xué)的深化和補(bǔ)充,是學(xué)好計算機(jī)圖形學(xué)的重要保證,也是培養(yǎng)學(xué)生動手能力的有力武器。因此,教學(xué)過程中要加強(qiáng)實(shí)踐教學(xué),將理論教學(xué)和實(shí)踐教學(xué)密切結(jié)合起來。

1) 實(shí)驗(yàn)題目層次化。

根據(jù)大綱要求,結(jié)合學(xué)生的實(shí)際情況,將實(shí)踐教學(xué)由淺到深分層次進(jìn)行。我們共有8個學(xué)時的實(shí)驗(yàn),按照由淺到深的原則安排了4個小實(shí)驗(yàn):直線生成、圖形變換、裁剪計算、曲線生成,以及1個綜合性實(shí)驗(yàn)。對于驗(yàn)證型實(shí)驗(yàn),即那些有代表性的算法,如直線生成、裁剪計算等,要求每個學(xué)生根據(jù)教材的子程序親自動手實(shí)現(xiàn),加強(qiáng)對課堂所學(xué)基本算法的理解,培養(yǎng)他們的成就感,并且,題目的要求也隨著難易程度發(fā)生變化,如直線生成算法比較簡單,要求學(xué)生實(shí)現(xiàn)的算法必須具有通用性,同時,為增加學(xué)生的學(xué)習(xí)興趣,可以巧妙設(shè)計實(shí)驗(yàn)內(nèi)容,如在實(shí)現(xiàn)直線生成算法時,可以讓學(xué)生畫線生成漢字;圖形變換主要讓學(xué)生實(shí)現(xiàn)二維圖形的變換,包括平移、旋轉(zhuǎn)、縮放及復(fù)合變換等內(nèi)容,由于這一實(shí)驗(yàn)包含多個操作,要求學(xué)生增加菜單選擇功能;裁剪計算要求實(shí)現(xiàn)線段裁剪算法,從易操作的角度出發(fā),要求算法采用交互式的畫線方法;曲線生成算法要求學(xué)生采用根據(jù)參數(shù)曲線定義的方法來實(shí)現(xiàn),對于編程能力強(qiáng)的同學(xué),在曲線生成的基礎(chǔ)上,增加鼠標(biāo)拖動控制點(diǎn)改變曲線形狀的要求。對于綜合型實(shí)驗(yàn)項目,學(xué)生可根據(jù)自身學(xué)習(xí)能力和實(shí)踐能力選擇獨(dú)立完成或合作完成,通過綜合型實(shí)踐訓(xùn)練,不但培養(yǎng)了學(xué)生的動手能力和創(chuàng)新意識,而且還培養(yǎng)了他們的團(tuán)隊協(xié)作精神。

2) 開發(fā)環(huán)境多元化。

完善教學(xué)內(nèi)容,擴(kuò)展學(xué)生的知識面,實(shí)踐教學(xué)采用開發(fā)環(huán)境的聯(lián)合。對于驗(yàn)證性實(shí)驗(yàn),學(xué)生可在Turbo C環(huán)境中實(shí)現(xiàn),而對于綜合性實(shí)驗(yàn),鼓勵學(xué)生基于OpenGL進(jìn)行編程。讓學(xué)生提前介入到使用OpenGL編寫“應(yīng)用軟件”,不但可以滿足學(xué)生的興趣,還可以提高學(xué)生的實(shí)際動手能力。

4結(jié)語

計算機(jī)圖形學(xué)是一門不斷發(fā)展的交叉學(xué)科,其教學(xué)方法需要在實(shí)踐中不斷探索。我們教學(xué)工作者在研究高效率的教學(xué)手段和教學(xué)方法的同時,還應(yīng)積極參與教學(xué)內(nèi)容相關(guān)的科研工作,從而更加明確教學(xué)重點(diǎn)和難點(diǎn),做到在教學(xué)過程中有的放矢,激發(fā)學(xué)生學(xué)習(xí)和思考的積極性和主動性。

參考文獻(xiàn):

[1] 何援軍. 計算機(jī)圖形學(xué)[M]. 2版. 北京:機(jī)械工業(yè)出版社,2009:2.

[2] 吳元斌.“計算機(jī)圖形學(xué)”教學(xué)的幾點(diǎn)體會[J]. 安康師專學(xué)報,2004(4):119-121.

[3] 魯敏,于慧穎,鄭平剛. 信息工程專業(yè)計算機(jī)圖形學(xué)教學(xué)模式思考[J]. 高等教育研究學(xué)報,2006,29(3):31-33.

[4] 潘革生,何援軍,趙峻穎. 計算機(jī)圖形學(xué)教學(xué)理念的研究與實(shí)踐[R]. 煙臺:第一屆中國圖學(xué)大會,2007:476-479.

The Thinking of Teaching on Computer Graphics

WANG Yanchun, ZHANG Jinzheng, LI Shaojing

(Science and Information College, Qingdao Agricultural University, Qingdao 266109, China)

第2篇:計算機(jī)圖形學(xué)課程范文

關(guān)鍵詞 計算機(jī)圖形學(xué) 第三方演示 課程群 分組實(shí)踐

Abstract At present, computer graphics has become an important part of undergraduate computer education, and it is also plays an important role to cultivate innovative talents to adapt to the information age. Based on the teaching of computer graphics course by the author as an example, analyzes the existing problems in the teaching of computer graphics, and put forward improvement ideas from three aspects: according to the different needs of students utilizing the third party demonstration teaching and cross curriculum interpretation, introducing course group to replace single course, employing group practice examination instead of individual, and other forms to improve the quality of teaching.

Keywords computer graphics; third party demonstration; course group; group practic

計算機(jī)圖形學(xué)是一門介紹顯示、生成和處理計算機(jī)圖形的原理和方法的課程。它在計算機(jī)總體教學(xué)體系中屬內(nèi)容綜合性較強(qiáng)且發(fā)展迅速的方向之一。該課程既有具體的圖形軟硬件實(shí)現(xiàn),又有抽象的理論和算法,旨在為學(xué)生從事相關(guān)工作打下堅實(shí)基礎(chǔ)。學(xué)生須以高等數(shù)學(xué)和線性代數(shù)的基本理論和較熟練的程序設(shè)計能力作為本課程學(xué)習(xí)的基礎(chǔ)。課程的難點(diǎn)在于計算機(jī)圖形學(xué)研究范圍廣,與其他學(xué)科交叉性強(qiáng),且知識不斷更新變化。在教學(xué)實(shí)施過程中,難點(diǎn)是理解和掌握相應(yīng)的基礎(chǔ)理論和算法,以及利用計算機(jī)圖形學(xué)相關(guān)工具進(jìn)行圖形學(xué)實(shí)際問題的解決。

本課程對學(xué)生的培養(yǎng)學(xué)生圍繞以下三個方面展開: (1)建立對計算機(jī)圖形學(xué)的基本認(rèn)識,理解圖形的表示與數(shù)據(jù)結(jié)構(gòu)、曲線曲面的基本概念。(2)理解并掌握基本圖形的生成算法,并能對現(xiàn)有的算法進(jìn)行改進(jìn),理解圖形的變換和裁減算法。 (3)面向算機(jī)圖形的程序設(shè)計能力,以底層圖形生成算法為核心構(gòu)建應(yīng)用程序。相應(yīng)的考查方式由理論授課、上機(jī)實(shí)習(xí)和課外作業(yè)三個單元構(gòu)成。從近年的授課實(shí)踐和考試情況分析,該教學(xué)內(nèi)容難度設(shè)置合理,深入淺出且相互承接成為體系,學(xué)生總體反饋良好。但也存在一些矛盾和問題。以下將對幾個問題進(jìn)行重點(diǎn)闡述與思考,并提出課程改革思路。

1 計算機(jī)圖形學(xué)與計算機(jī)輔助設(shè)計銜接問題

筆者所在院校是具有航空航天背景的工科院校,“CAD計算機(jī)輔助設(shè)計”是飛行器設(shè)計、機(jī)械設(shè)計與制造等多學(xué)科的重要課程。相關(guān)學(xué)科學(xué)生期望通過對計算機(jī)圖形學(xué)知識的深入理解,促進(jìn)CAD設(shè)計工具諸如Catia、Solidwork和Rhino等先進(jìn)工具的運(yùn)用能力。然而,目前的計算機(jī)圖形學(xué)課程的教學(xué)和考察環(huán)節(jié)倚重低層算法講解與基于OPENGL等的程序設(shè)計,除綜述外并未具體引入CAD相關(guān)內(nèi)容。產(chǎn)生的問題是,一方面,飛行器設(shè)計及機(jī)械設(shè)計與制造等專業(yè)的學(xué)生由于程序設(shè)計能力不足,難以駕馭較復(fù)雜的程序設(shè)計任務(wù),在學(xué)習(xí)過程中心理壓力較大;另一方面,由于授課均為教師為計算機(jī)相關(guān)專業(yè)背景,該課程的講授并未銜接CAD相關(guān)技術(shù),學(xué)生難以構(gòu)建二者之間的聯(lián)系。

解決方案:

本質(zhì)上,該問題是由于選課學(xué)生的學(xué)習(xí)動機(jī)和基礎(chǔ)不同造成的。以單一的教學(xué)和考查方式難以兼顧這類面向具體應(yīng)用的學(xué)習(xí)需求。在教學(xué)方法上,采用第三方案例教學(xué)法和交叉講解法相結(jié)合以解決此問題。具體的,將CAD等應(yīng)用場合以具體案例形式講解,授課教師邀請飛行器、機(jī)械設(shè)計相關(guān)教研組研究生以4~6學(xué)時的講臺演示的形式呈現(xiàn)CAD工具完整設(shè)計過程。授課教師則以交叉講解方式為學(xué)生講解運(yùn)用到的計算機(jī)圖形學(xué)知識點(diǎn),同時與學(xué)生交互式的問答和探討。在考查形式上,考慮到不同的學(xué)習(xí)動機(jī)和基礎(chǔ),采用多樣化實(shí)踐環(huán)節(jié)考查。計算機(jī)專業(yè)學(xué)生以O(shè)PENGL程序設(shè)計為考點(diǎn),而外專業(yè)學(xué)生以CAD等面向應(yīng)用的實(shí)踐工具為考點(diǎn),以兼顧各專業(yè)的學(xué)習(xí)需求。

2 計算機(jī)圖形學(xué)與計算機(jī)視覺相結(jié)合的問題

當(dāng)前,虛擬現(xiàn)實(shí)技術(shù)(VR)和人工智能技術(shù)(AI)兩個最重要最熱門的研究領(lǐng)域。虛擬現(xiàn)實(shí)的基礎(chǔ)理論支撐是計算機(jī)圖形學(xué),例如三維場景的生成與顯示。而人工智能的一個重要應(yīng)用場景是計算機(jī)視覺,例如基于圖像智能識別的自動駕駛技術(shù)和場景理解技術(shù)。很多學(xué)生對以計算機(jī)視覺為代表的人工智能技術(shù)懷有濃厚興趣,同時,學(xué)生又難以區(qū)分計算機(jī)圖形學(xué)和計算機(jī)視覺的關(guān)系。同時,二者在近年來的研究中呈現(xiàn)相互融合的趨勢。如基于三維立體視覺的機(jī)器人與場景實(shí)時定位與重建。如何在計算機(jī)圖形學(xué)課程中,很好地體現(xiàn)兩門課程的不同,避免學(xué)生的混淆,拓展學(xué)生的知識面,都是具有現(xiàn)實(shí)意義的課題。

解決方案:

實(shí)際上,計算機(jī)圖形學(xué)和計算機(jī)視覺可不失一般性的概括為互逆的關(guān)系:計算機(jī)圖形學(xué)是由概念設(shè)計到模型生成,最終繪制圖形圖像的過程;而計算機(jī)視覺則是從原始圖像中再加工并分析理解、以產(chǎn)生新圖像(如二維到三維)或輸出語義信息(如圖像自動標(biāo)注與理解、目標(biāo)檢測與識別)。將計算機(jī)圖形學(xué)納入“視覺處理課程群”框架,使學(xué)生首先掌握課程群中各課程的側(cè)重點(diǎn),著重理解圖形學(xué)在課程群中的作用。精心選取2~3個計算機(jī)視覺和圖形學(xué)交叉的當(dāng)前主流研究方向,展開概念層面的演示講解,不深究具體算法,著重闡述兩種技術(shù)的相互依賴關(guān)系并對比二者的區(qū)別。相關(guān)領(lǐng)域的演示還包括增強(qiáng)現(xiàn)實(shí)、人機(jī)交互、計算機(jī)輔助診斷等等。鼓勵學(xué)生自主學(xué)習(xí),最終使學(xué)生在做中學(xué)、用中學(xué),提高獨(dú)立分析新問題和綜合運(yùn)用知識解決問題的能力。

3 如何平衡算法講解和程序應(yīng)用技能

計算機(jī)圖形學(xué)涉及的算法多,核心算法是該課程的必講內(nèi)容,在算法細(xì)節(jié)的講解過程中學(xué)生容易產(chǎn)生畏難厭學(xué)情緒,注意教學(xué)方法以調(diào)動學(xué)生的興趣尤為重要。另一方面,對學(xué)生的考察方式最終是通過編程實(shí)踐完成。學(xué)生在編程實(shí)踐中常常遇到大量調(diào)試問題,同時要閱讀大量文檔以了解OPENGL接口函數(shù)的調(diào)用方法,這個過程占用了很大工作量。

解決方案:

在理論教學(xué)部分,著重講清計算機(jī)圖形學(xué)原理和概念、全面解析經(jīng)典算法思想。課程強(qiáng)調(diào)對理論核心思想的闡述,用通俗易懂的語言,條例清晰的邏輯,進(jìn)行簡明透徹的闡述,附以直觀、形象的動態(tài)演示系統(tǒng),力圖使學(xué)生在較短的時間內(nèi)、有效地掌握基本理論。分析圖形學(xué)各種經(jīng)典算法的原理、可行性及幾何復(fù)雜性,盡可能多地比較算法之間的思想差異,分別指出它們的優(yōu)缺點(diǎn)和應(yīng)用場合,并促進(jìn)學(xué)生思考如何在保證算法的準(zhǔn)確性、可靠性的前提下,提高算法的效率。同時注重接近國際前沿的研究內(nèi)容,注重講授經(jīng)典知識和最新進(jìn)展相結(jié)合,以激發(fā)學(xué)生的學(xué)習(xí)興趣,提高課堂效率和活躍度,力爭以較少的課時闡述計算機(jī)圖形學(xué)的基本原理、基本方法,加大實(shí)踐環(huán)節(jié)比重。通過往年學(xué)生完成的優(yōu)秀課程作業(yè)作品的展示,激發(fā)學(xué)生的創(chuàng)造熱情。改革實(shí)踐環(huán)節(jié)的考查方式,以項目小組形式取代對個體的考查。原則上每組3~5人,自由組合。在課程結(jié)束前,采用小組現(xiàn)場演示講解的方式,展示小組成員通過編程實(shí)踐環(huán)節(jié)完成的一個項目。學(xué)生在項目小M中鍛煉了團(tuán)隊協(xié)作能力,降低了個人工作強(qiáng)度,同時互相學(xué)習(xí)和督促的氛圍使課程作業(yè)的質(zhì)量得以大幅提高。以基礎(chǔ)實(shí)驗(yàn)――目標(biāo)性重建實(shí)驗(yàn)――自主性訓(xùn)練的層次化實(shí)踐框架模式,逐步培養(yǎng)學(xué)生自主研究,獨(dú)立解決問題、分析問題,確定解決方案的能力,樹立正確的科學(xué)研究習(xí)慣,培養(yǎng)學(xué)生的科學(xué)研究能力。

總之,合理設(shè)計實(shí)踐教學(xué)案例,進(jìn)一步實(shí)現(xiàn)課程體系和實(shí)踐內(nèi)容的統(tǒng)一,建立一個多層次、立體化的實(shí)踐教學(xué)體系,注重學(xué)生的參與性與實(shí)踐性,引導(dǎo)和鼓勵學(xué)生進(jìn)行創(chuàng)新實(shí)踐和課外研學(xué)。改革考核方式和考試形式,加大實(shí)踐環(huán)節(jié)在成績中的比重,強(qiáng)化實(shí)踐能力培養(yǎng),寓教于樂的同時引導(dǎo)學(xué)生追求卓越。此外,計算機(jī)圖形學(xué)技術(shù)是發(fā)展非??斓囊粋€研究及應(yīng)用領(lǐng)域,且對編程要求較高,應(yīng)注重實(shí)驗(yàn)室機(jī)房投入更新必要硬件,并保障軟件編程環(huán)境的正常運(yùn)行。

L鼙疚氖苤泄┦亢蠡YBA15035,江蘇省教改項目JGLX13_008資助

參考文獻(xiàn)

[1] 孫家廣,胡事民.計算機(jī)圖形學(xué)基礎(chǔ)教程.北京:清華大學(xué)出版社,2005.2.

[2] 唐榮錫,汪嘉業(yè),彭群生等.計算機(jī)圖形學(xué)教程(修訂版).北京:科學(xué)出版社,2000.

[3] LIU Hailan.On development and application of computer graphics[J].Computer Knowledge and Technology,2010(3):9551-9552.

[4] 婁鳳偉.創(chuàng)造性思維與計算機(jī)基礎(chǔ)教學(xué)[J].教育探索,2002.

第3篇:計算機(jī)圖形學(xué)課程范文

[關(guān)鍵詞] 計算機(jī)圖形學(xué);思維導(dǎo)圖;圖形學(xué)理論教學(xué);圖形學(xué)實(shí)踐教學(xué)

[中圖分類號] G642 [文獻(xiàn)標(biāo)志碼] A [文章編號] 1008-2549(2016) 07-0106-02

一 計算機(jī)圖形學(xué)課程教學(xué)中存在的問題

本科的計算機(jī)圖形學(xué)教學(xué)對數(shù)學(xué)理論有一定要求,往往體現(xiàn)為公式推導(dǎo)、演化等形式,同時也涉及算法設(shè)計及其代碼實(shí)現(xiàn)。而傳統(tǒng)計算機(jī)圖形學(xué)教學(xué)重點(diǎn)一般側(cè)重于考核學(xué)生對知識點(diǎn)的掌握,課程實(shí)踐所占比例較低。因此傳統(tǒng)的教學(xué)模式不適用于計算機(jī)圖形學(xué)課程,若仍沿用傳統(tǒng)教學(xué)模式,則不僅不利于維持學(xué)生的學(xué)習(xí)興趣,更不利于學(xué)生發(fā)現(xiàn)問題、解決問題以及創(chuàng)新能力的培養(yǎng)。

1 計算機(jī)圖形學(xué)教學(xué)內(nèi)容與學(xué)生的學(xué)習(xí)興趣

傳統(tǒng)的計算機(jī)圖形學(xué)內(nèi)容主要有:計算機(jī)圖形系統(tǒng)概述;二維圖形生成和變換技術(shù);三維圖形生成和變換技術(shù);真實(shí)感圖形生成技術(shù);計算機(jī)動畫技術(shù)與實(shí)踐。該課程入門階段需要的數(shù)學(xué)知識主要涉及代數(shù)、三角學(xué)和線性代數(shù),數(shù)學(xué)原理與圖形的結(jié)合在理論教學(xué)中占據(jù)了一定比重。

傳統(tǒng)的計算機(jī)圖形學(xué)教學(xué)目標(biāo)是側(cè)重于培養(yǎng)學(xué)生對計算機(jī)圖形學(xué)理論知識的了解與掌握,在教學(xué)內(nèi)容的設(shè)置上主要強(qiáng)調(diào)圖形學(xué)知識、概念的系統(tǒng)性與整體性,重點(diǎn)是概念解釋與原理講解,體現(xiàn)為大量的公式推導(dǎo)。

未進(jìn)入圖形學(xué)教學(xué)前,學(xué)生們對該課程的理解大致分為兩類:一類認(rèn)為該課程主要講述游戲開發(fā)。另一類認(rèn)為是藝術(shù)設(shè)計。實(shí)際上,在本科階段開設(shè)的計算機(jī)圖形學(xué)課程,通常立足于計算機(jī)圖形學(xué)科的入門,教學(xué)內(nèi)容主要是理解與掌握基本的圖形繪制原理及其實(shí)現(xiàn)算法,能進(jìn)行基本圖形的程序設(shè)計。由此,學(xué)習(xí)內(nèi)容的枯燥、教學(xué)內(nèi)容與現(xiàn)實(shí)應(yīng)用的巨大落差會導(dǎo)致部分學(xué)生的學(xué)習(xí)興趣隨課程的深入而有所下降。

2 計算機(jī)圖形學(xué)課程實(shí)驗(yàn)的設(shè)置

計算機(jī)圖形學(xué)的實(shí)驗(yàn)內(nèi)容主要集中于基本圖形算法的實(shí)現(xiàn),需要學(xué)生運(yùn)用高級程序語言進(jìn)行編程,然而作為專業(yè)基礎(chǔ)課程學(xué)習(xí)的此類高級程序設(shè)計課程,往往以基本知識、程序設(shè)計、數(shù)據(jù)組織三方面為主要內(nèi)容,一般不涉及圖形庫編程接口(API)。這導(dǎo)致在本課程的實(shí)驗(yàn)教學(xué)時,需要針對授課學(xué)生原先所學(xué)的高級程序語言,補(bǔ)充對應(yīng)的圖形庫編程知識,這使得實(shí)際的有效實(shí)驗(yàn)學(xué)時被縮減,而且增大了學(xué)生實(shí)現(xiàn)算法的難度,以至于進(jìn)一步加劇了理論與實(shí)踐脫節(jié)的現(xiàn)象。

二 理論教學(xué)與實(shí)踐教學(xué)的改革方法與目標(biāo)

我們在大學(xué)本科的第7個學(xué)期開設(shè)計算機(jī)圖形學(xué)課程,并將其分為理論課與實(shí)驗(yàn)課兩門課程,兩門課程單獨(dú)核算成績。其中理論課為32學(xué)時,2.0學(xué)分;實(shí)驗(yàn)課為16學(xué)時,0.5學(xué)分。在理論課程完成后開始實(shí)驗(yàn)課程,計算機(jī)圖形學(xué)的實(shí)驗(yàn)不再是傳統(tǒng)教學(xué)中對理論課知識點(diǎn)的簡單重復(fù)與驗(yàn)證,而是對所學(xué)知識的綜合運(yùn)用與深化。由此,需要合理選擇理論課教學(xué)內(nèi)容,以完成與實(shí)驗(yàn)課程的銜接。同時,設(shè)計合適的實(shí)驗(yàn)項目使學(xué)生掌握課程基礎(chǔ)知識,提高學(xué)生的動手能力,以提升計算機(jī)圖形學(xué)的教學(xué)質(zhì)量。

1 理論課教學(xué)內(nèi)容的設(shè)計

計算機(jī)圖形學(xué)技術(shù)在快速的發(fā)展著,與之相適應(yīng),圖形學(xué)課程的教學(xué)也發(fā)生著變化?,F(xiàn)階段,在計算機(jī)圖形學(xué)教學(xué)中主要有3種教學(xué)體系,大致分為:理論為主、編程為主、問題為主。其中,理論為主是傳統(tǒng)的教學(xué)體系,強(qiáng)調(diào)對計算機(jī)圖形學(xué)理論的理解與掌握,以公式推導(dǎo)為主要呈現(xiàn)方式,國內(nèi)外此類教材有Floey的《計算機(jī)圖形學(xué)原理及實(shí)踐――C語言描述(原書第2版)》,孫家廣的《計算機(jī)圖形學(xué)》等。編程為主的教學(xué)體系側(cè)重于培養(yǎng)學(xué)生初步掌握一種典型的圖形學(xué)API,以圖形學(xué)使用者的角度講授計算機(jī)圖形學(xué)所需的理論與概念,去除非必需的數(shù)學(xué)原理與公式推導(dǎo)。國內(nèi)外此類教材有Donald的《計算機(jī)圖形學(xué)(第四版)》,徐文鵬的《計算機(jī)圖形學(xué)基礎(chǔ)(OpenGL版)》等。問題為主教學(xué)體系的教學(xué)目標(biāo)著重于培養(yǎng)利用計算機(jī)圖形學(xué)知識建立與用戶交流的能力,從而實(shí)現(xiàn)問題的圖形化建模并解決問題。相應(yīng)的教學(xué)內(nèi)容既涵蓋了圖形學(xué)中的基本概念和技術(shù),也涉及了實(shí)現(xiàn)這些概念和技術(shù)的圖形學(xué)工具,然而重點(diǎn)在于介紹如何使用計算機(jī)圖形學(xué)知識來解決實(shí)際問題以及如何有效地進(jìn)行結(jié)果展示,Steve Cunningham的《計算機(jī)圖形學(xué)》是此類教學(xué)體系的典型教材。此類問題為主的教學(xué)體系近年來在美國興起。

在我們的本科教學(xué)中,考慮到學(xué)生前期課程的設(shè)置與掌握情況,采用了結(jié)合OpenGL實(shí)現(xiàn)算法的編程為主的教學(xué)體系。在實(shí)際教學(xué)中,既要保證計算機(jī)圖形學(xué)基本概念、理論的完整講述,也為后續(xù)的實(shí)踐課程做鋪墊,有針對性地介紹圖形支撐軟件,使學(xué)生在掌握圖形學(xué)基本知識的同時,能夠在一定程度上自主實(shí)踐,保持與激發(fā)學(xué)生的學(xué)習(xí)興趣。

2 以思維導(dǎo)圖優(yōu)化圖形學(xué)教學(xué)的實(shí)踐應(yīng)用

思維導(dǎo)圖(又稱心智圖),是英國教育學(xué)家東尼?博贊在20世紀(jì)60年代創(chuàng)造的,它作為模擬放射性思維的圖形工具,能激發(fā)大腦的潛力。在人獲得信息后,進(jìn)入大腦的信息以新的思想中心與其他信息建立關(guān)聯(lián),形成向外發(fā)散的網(wǎng)狀結(jié)構(gòu)。此后,每一個發(fā)散出的節(jié)點(diǎn),又將作為新的中心,再次發(fā)散形成新連接。

3 實(shí)驗(yàn)課教學(xué)內(nèi)容的設(shè)計

計算機(jī)圖形學(xué)傳統(tǒng)教學(xué)中的實(shí)踐一般使用C++來實(shí)現(xiàn)相關(guān)算法,實(shí)現(xiàn)難度過大,導(dǎo)致學(xué)生沒有時間和興趣去完成。實(shí)踐教學(xué)的本意是對理論教學(xué)的鞏固、完善與提高,為實(shí)現(xiàn)理論與實(shí)踐教學(xué)的平穩(wěn)銜接,我們在實(shí)踐教學(xué)環(huán)節(jié)中,采用OpenGL作為圖形算法接口,讓學(xué)生有針對性地完成若干實(shí)驗(yàn)項目。

第4篇:計算機(jī)圖形學(xué)課程范文

關(guān)鍵詞:計算機(jī)圖形學(xué) 教材 OpenGL

中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2014)10(c)-0178-02

從學(xué)科角度來看,計算機(jī)圖形學(xué)是一門理論和實(shí)踐都很強(qiáng)的綜合性學(xué)科;從技術(shù)層面來看,計算機(jī)圖形學(xué)是計算機(jī)應(yīng)用領(lǐng)域的一個重要分支,其應(yīng)用已經(jīng)滲透到社會的各個方面,例如計算機(jī)游戲產(chǎn)業(yè)和影視動畫,人們使用手機(jī)和計算機(jī)時操作的圖形用戶接口,這些應(yīng)用與人們的生活密不可分。計算機(jī)輔助設(shè)計與制造、科學(xué)數(shù)據(jù)可視化、虛擬現(xiàn)實(shí)等等,計算機(jī)圖形學(xué)在科學(xué)研究、生產(chǎn)實(shí)踐和人們的日常生活中均占有重要地位。因此,學(xué)生在學(xué)習(xí)計算機(jī)圖形學(xué)課程之前對該課程具有一定的好奇和期待,但是如果按照當(dāng)前市場上流行的教材組織教學(xué)會使學(xué)生很失望,從而失去學(xué)習(xí)該課程的熱情。

1 計算機(jī)圖形學(xué)教材存在的問題

計算機(jī)圖形學(xué)是研究用計算機(jī)生成、處理和顯示圖形的一門學(xué)科,本科段的主要教學(xué)內(nèi)容由以下幾個部分組成:光柵圖形學(xué)、圖形變換、圖形裁剪、可見面判斷、曲線和曲面、簡單的真實(shí)感圖形生成。基于這些內(nèi)容,國內(nèi)教材基本上以計算機(jī)基本圖形的生成原理及其相應(yīng)的經(jīng)典算法為核心,注重算法的推導(dǎo)過程,也就是數(shù)學(xué)演算過程,使得教材內(nèi)容理論性很強(qiáng),對學(xué)生的數(shù)學(xué)基礎(chǔ)要求較高。這樣的教材適合培養(yǎng)學(xué)術(shù)研究型的學(xué)生,所學(xué)知識為他們進(jìn)一步學(xué)習(xí)、從事計算機(jī)圖形學(xué)的研究打下堅實(shí)的基礎(chǔ)。但是應(yīng)用型本科院校計算機(jī)專業(yè)的絕大多數(shù)學(xué)生畢業(yè)后走向職場,即使考上研究生進(jìn)一步深造的學(xué)生,選擇計算機(jī)圖形學(xué)作為研究方向的可以說是鳳毛麟角。更加重要的是,應(yīng)用型本科院校計算機(jī)專業(yè)的學(xué)生普遍數(shù)學(xué)基礎(chǔ)比較差,沒有數(shù)學(xué)基礎(chǔ)來學(xué)習(xí)這種數(shù)學(xué)演算式的算法推導(dǎo)過程。由于計算機(jī)軟硬件技術(shù)的飛速發(fā)展,當(dāng)前在軟件開發(fā)領(lǐng)域也用不到教材中這樣底層的經(jīng)典圖形算法,一般的圖形軟件開發(fā)都是基于某種圖形軟件標(biāo)準(zhǔn),例如實(shí)際的業(yè)界標(biāo)準(zhǔn)OpenGL(Application Programming Interface),微軟公司的DirectX?;谲浖?biāo)準(zhǔn),學(xué)生可以學(xué)到開發(fā)圖形學(xué)軟件的一些實(shí)用技術(shù),掌握繪制真實(shí)感圖形的完整流程。因此,當(dāng)前急需解決應(yīng)用型本科院校計算機(jī)圖形學(xué)的教材問題,以及由此帶來的該課程在應(yīng)用型本科院校的定位問題。

2 計算機(jī)圖形學(xué)教學(xué)改革探索

應(yīng)用型本科院校的學(xué)生普遍數(shù)學(xué)基礎(chǔ)比較差,優(yōu)點(diǎn)是動手能力比較強(qiáng),其中不乏玩游戲的高手。絕大多數(shù)認(rèn)真學(xué)習(xí)的學(xué)生都對程序開發(fā)比較感興趣,并且學(xué)得快。但是由于數(shù)學(xué)基礎(chǔ)和抽象思維能力比較差,對理論性強(qiáng)的教學(xué)內(nèi)容不感興趣,學(xué)起來吃力。針對計算機(jī)圖形學(xué)教材的現(xiàn)狀和應(yīng)用型本科院校學(xué)生的特點(diǎn),對計算機(jī)圖形學(xué)課程的教學(xué)目標(biāo)、教學(xué)內(nèi)容和教學(xué)方法進(jìn)行了一定的研究探索。將教學(xué)目標(biāo)定位為使學(xué)生通過該課程的學(xué)習(xí),對計算機(jī)圖形學(xué)有一個概括性的全面了解,理解計算機(jī)基本圖形的生成原理及其相應(yīng)的經(jīng)典算法的基本思路,掌握其中的重要技術(shù);學(xué)習(xí)一種圖形軟件標(biāo)準(zhǔn),加大實(shí)際動手能力的培養(yǎng)力度,使學(xué)生通過該課程的學(xué)習(xí),能夠設(shè)計簡單的圖形場景,掌握繪制真實(shí)感圖形的基本流程。對于教學(xué)內(nèi)容,采用一本教材為主,多本參考書為輔,在吃透這些教材的基礎(chǔ)上重新整合教學(xué)內(nèi)容,力求使學(xué)生能夠?qū)W到實(shí)際有用的知識和技術(shù),掌握必要的計算機(jī)圖形學(xué)的理論基礎(chǔ)和開發(fā)圖形應(yīng)用軟件的初步能力。OpenGL是一種跨平臺的應(yīng)用程序接口,已經(jīng)成為實(shí)際的業(yè)界標(biāo)準(zhǔn),而微軟公司的DirectX僅適用于Windows操作系統(tǒng)。另外,OpenGLES是OpenGL的子集,應(yīng)用于多種嵌入式系統(tǒng),如控制臺、移動電話、手持設(shè)備、家電設(shè)備和汽車等。把JavaScript和OpenGL ES 2.0結(jié)合在一起構(gòu)成了WebGL,為HTML5 Canvas提供硬件3D加速渲染,Web開發(fā)人員可以用WebGL構(gòu)建具有豐富圖形的網(wǎng)站頁面和設(shè)計網(wǎng)頁游戲等。所以教學(xué)中選用了OpenGL作為實(shí)驗(yàn)平臺。

教學(xué)內(nèi)容整合以教材為依據(jù),對應(yīng)每個教學(xué)模塊增加相應(yīng)的OpenGL內(nèi)容,例如光柵圖形學(xué)模塊增加OpenGL的基本圖元繪制、圖形變換模塊增加OpenGL實(shí)現(xiàn)圖形變換的內(nèi)容、曲線和曲面模塊增加利用OpenGL繪制Beizer曲線曲面和B樣條曲線曲面的方法、真實(shí)感圖形生成模塊增加OpenGL的光照(包括光源的位置、光的類型)和材質(zhì)內(nèi)容,等等。整合后的教學(xué)內(nèi)容體現(xiàn)了理論與實(shí)踐并重、理論與實(shí)踐相結(jié)合的教育思想,每一次課的教學(xué)內(nèi)容由兩部分組成:一是理論部分,講授計算機(jī)圖形學(xué)基本原理和概念、經(jīng)典算法的設(shè)計;二是實(shí)踐部分,講授與理論教學(xué)內(nèi)容相關(guān)的OpenGL繪圖程序設(shè)計。對于理論教學(xué)內(nèi)容突出重點(diǎn),精選有代表性的算法講解透徹,使學(xué)生掌握算法思想的精髓、主要技術(shù)手段,對類似算法能夠舉一反三,自行學(xué)習(xí)。實(shí)踐教學(xué)部分強(qiáng)化培養(yǎng)學(xué)生的創(chuàng)新思維和實(shí)際動手能力,針對教學(xué)內(nèi)容演示基于OpenGL繪制的圖形或者場景,引導(dǎo)學(xué)生分析設(shè)計過程以及實(shí)現(xiàn)各個功能的OpenGL函數(shù),以便學(xué)生通過學(xué)習(xí)能夠獨(dú)立自主地設(shè)計出具有真實(shí)感的圖形或者簡單場景。由于教學(xué)內(nèi)容由理論和實(shí)踐兩個主題構(gòu)成,所以教學(xué)過程中要特別注意將這兩個部分有機(jī)地融合在一起,具體做法是講清楚OpenGL函數(shù)在計算機(jī)系統(tǒng)內(nèi)的實(shí)現(xiàn)機(jī)制,下面以圖形的幾何變換為例說明。圖形的幾何變換以齊次坐標(biāo)為基礎(chǔ),用矩陣表示變換,將變換矩陣乘以點(diǎn)的原始坐標(biāo),運(yùn)算結(jié)果即為變換后的點(diǎn)的坐標(biāo);OpenGL的變換函數(shù)是以程序員給定的參數(shù)、按照函數(shù)功能先構(gòu)造相應(yīng)的變換矩陣,然后將變換矩陣與點(diǎn)坐標(biāo)相乘得到變換后的點(diǎn)坐標(biāo)。通過這種剖析將理論知識與實(shí)踐技術(shù)有機(jī)地結(jié)合起來,使學(xué)生知其然,也知其所以然,極大地激發(fā)了學(xué)生學(xué)習(xí)理論基礎(chǔ)知識的熱情。

教學(xué)過程以建構(gòu)主義教學(xué)理念為指導(dǎo),以任務(wù)驅(qū)動教學(xué)法為主結(jié)合多種教學(xué)方法以提高課堂教學(xué)質(zhì)量。建構(gòu)主義教育思想認(rèn)為學(xué)習(xí)的本質(zhì)是知識的建構(gòu)過程,教學(xué)的目的在于幫助學(xué)生實(shí)現(xiàn)知識建構(gòu),而不是單向的給學(xué)生傳授知識,教師的作用是引導(dǎo)學(xué)生對原有知識進(jìn)行改造和重組,實(shí)現(xiàn)新知識建構(gòu)。任務(wù)驅(qū)動教學(xué)法的核心是以任務(wù)驅(qū)動教學(xué)過程,教師根據(jù)教學(xué)目標(biāo)和教學(xué)內(nèi)容設(shè)計合適的任務(wù),通過分析這個任務(wù)引導(dǎo)學(xué)生建構(gòu)知識。例如,講授真實(shí)感圖形生成時,首先演示一個編程繪制的具有真實(shí)感的圖形,在光照的作用下圖形逼真、美觀,極大地激發(fā)了學(xué)生的學(xué)習(xí)興趣。通過分析這個圖形的生成原理和技術(shù),引出光照模型和顏色理論的基礎(chǔ)知識,通過設(shè)問、啟發(fā)等多種教學(xué)方法引導(dǎo)學(xué)生建構(gòu)相關(guān)的理論知識;通過分析OpenGL實(shí)現(xiàn)光照、材質(zhì)的技術(shù),完成利用計算機(jī)繪制真實(shí)感圖形的教學(xué)任務(wù)。

最近幾年,市場上出現(xiàn)了一些面向應(yīng)用型本科院校的計算機(jī)圖形學(xué)教材,其中計算機(jī)圖形學(xué)基礎(chǔ)理論的深度和難度都比傳統(tǒng)教材降低了,闡述也比較通俗易懂,但是沒有配套的上機(jī)實(shí)踐教材。因此,編寫了基于OpenGL的電子版實(shí)驗(yàn)指導(dǎo)書,實(shí)驗(yàn)內(nèi)容由以下模塊組成:熟悉編程環(huán)境、基本圖元生成、二維圖形變換、三維圖形變換、光照和材質(zhì)、曲線和曲面。實(shí)驗(yàn)類型分為驗(yàn)證型,設(shè)計型和綜合型。每次上機(jī)實(shí)驗(yàn)課的內(nèi)容分為兩個部分:一是運(yùn)行課堂教學(xué)中講授的OpenGL程序、分析運(yùn)行結(jié)果,然后修改這個程序生成新的圖形,從而加深對所學(xué)知識的理解;二是利用所學(xué)知識設(shè)計一個物體或者簡單的場景。課外作業(yè)是根據(jù)所學(xué)知識自由創(chuàng)造一個具有真實(shí)感的場景,從第一次上機(jī)實(shí)驗(yàn)開始,從簡單到復(fù)雜構(gòu)造一個場景,每次上機(jī)后增加本次實(shí)驗(yàn)所學(xué)知識的內(nèi)容,上機(jī)實(shí)驗(yàn)課結(jié)束時上交,作為該課程的實(shí)驗(yàn)考試成績。這樣,學(xué)生不僅學(xué)習(xí)了利用計算機(jī)生成真實(shí)感圖形的完整流程,而且親自實(shí)踐了這個完整流程。

4 結(jié)語

通過教學(xué)內(nèi)容的整合,使學(xué)生能夠?qū)W到利用計算機(jī)生成真實(shí)感圖形的完整流程,有效地培養(yǎng)了學(xué)生的軟件開發(fā)能力,如果不進(jìn)行上述教學(xué)改革是不可能達(dá)到這個目的的。當(dāng)前國內(nèi)教材太注重經(jīng)典算法的剖析,學(xué)生即使努力學(xué)習(xí),也是只見樹木不見森林,非常不適合應(yīng)用型本科院校的學(xué)生使用。由于OpenGL的強(qiáng)大功能,教學(xué)中可以演示利用OpenGL編程繪制的逼真圖形,學(xué)生通過學(xué)習(xí)也可以自行設(shè)計、編程繪制這樣具有真實(shí)感的圖形,極大地激發(fā)了學(xué)生的求知欲,使得學(xué)生想學(xué)計算機(jī)圖形學(xué)課程,有效地提高了該課程的教學(xué)質(zhì)量。

參考文獻(xiàn)

[1] 王艷春,張金政,李紹靜.計算機(jī)圖形學(xué)課程教學(xué)思考[J].計算機(jī)教育,2011(14):63-66

[2] 孔令德,劉晉鋼.應(yīng)用型工科院校計算機(jī)圖形學(xué)教學(xué)模式改革[J].計算機(jī)教育,2011(18):20-22

[3] Francis S Hill,Jr,Sstephen mkelly,著.計算機(jī)圖形學(xué)(OpenGL版)[M].3版,胡事民,劉利剛,劉永進(jìn),等,譯.北京:清華大學(xué)出版社,2009.

第5篇:計算機(jī)圖形學(xué)課程范文

【關(guān)鍵詞】計算機(jī)圖形學(xué) 實(shí)踐教學(xué) 應(yīng)用型教育 數(shù)字媒體技術(shù)專業(yè)

【基金項目】基于CDIO的數(shù)字媒體技術(shù)專業(yè)卓越型人才培養(yǎng)模式的構(gòu)建與實(shí)踐(2012jyxm358)。

【中圖分類號】G642 【文獻(xiàn)標(biāo)識碼】A 【文章編號】2095-3089(2013)08-0152-02

1.引言

計算機(jī)圖形學(xué)是數(shù)字媒體技術(shù)專業(yè)一門重要的核心專業(yè)課,它在虛擬現(xiàn)實(shí)、計算機(jī)輔助設(shè)計與制造(CAD/CAE)、科學(xué)計算可視化、計算機(jī)動畫、地理信息系統(tǒng)(GIS)、計算機(jī)游戲、、影視廣告計算機(jī)仿真等領(lǐng)域均有廣泛應(yīng)用,該課程也是新一輪專業(yè)教學(xué)改革中計算機(jī)科學(xué)方向的16門主干核心課程之一。該課程一方面內(nèi)容十分豐富,涵蓋了計算機(jī)圖形學(xué)表示、生成、顯示和處理圖形的基本原理與方法,另一方面理論性強(qiáng)、難度大,以計算機(jī)程序設(shè)計技術(shù)為基礎(chǔ),與數(shù)學(xué)、物理學(xué)等學(xué)科結(jié)合緊密,對數(shù)學(xué)、物理學(xué)的要求較高,如何教好、學(xué)好這門課程無論對教師還是學(xué)生都是一個挑戰(zhàn)[1]。

數(shù)字媒體技術(shù)專業(yè)是一個以計算機(jī)程序設(shè)計技術(shù)為主,藝術(shù)設(shè)計為輔,技術(shù)與藝術(shù)相結(jié)合,涉及多種學(xué)科交叉的新興專業(yè)。我校數(shù)字媒體技術(shù)專業(yè)依托文學(xué)院、美術(shù)學(xué)院,以游戲開發(fā)為主線,設(shè)置技術(shù)與藝術(shù)相結(jié)合的人才培養(yǎng)課程體系,探索培養(yǎng)復(fù)合型(面向應(yīng)用的理論型)數(shù)字媒體技術(shù)人才的新模式。為了培養(yǎng)社會急需的高素質(zhì)數(shù)字媒體技術(shù)人才,我國高等院校紛紛開設(shè)了數(shù)字媒體技術(shù)專業(yè),竭力在人文藝術(shù)素質(zhì)提高的同時,加強(qiáng)學(xué)生面向網(wǎng)絡(luò)、新型數(shù)字媒體技術(shù)的研究與開發(fā)能力[2]。

在高校計算機(jī)教學(xué)改革的推動下,在我校大學(xué)生的培養(yǎng)模式下,數(shù)字媒體技術(shù)專業(yè)的課程是本著厚基礎(chǔ)、重實(shí)踐、求創(chuàng)新的總體原則設(shè)置的。計算機(jī)圖形學(xué)作為一門專業(yè)基礎(chǔ)課,是該專業(yè)課程體系中占有重要位置的一門課。因此,如何結(jié)合當(dāng)前教學(xué)改革的要求,圍繞該課程的教學(xué)目標(biāo),上好這門課是值得深入思考和研究的,本文圍繞我校數(shù)字媒體技術(shù)專業(yè)計算機(jī)圖形學(xué)的教學(xué)目標(biāo),探討了幾點(diǎn)計算機(jī)圖形學(xué)的具體教學(xué)措施,應(yīng)用于我校該專業(yè)的計算機(jī)圖形學(xué)教學(xué)實(shí)踐中,取得較好效果。

2.專業(yè)特點(diǎn)與課程教學(xué)目標(biāo)

數(shù)字媒體技術(shù)專業(yè)是旨在培養(yǎng)具有良好科學(xué)素養(yǎng)和創(chuàng)新精神,具備信息傳播理論、數(shù)字媒體和設(shè)計管理能力的復(fù)合型高級應(yīng)用型專門人才。本專業(yè)的畢業(yè)生能從事數(shù)字媒體開發(fā)、音視頻數(shù)字化、網(wǎng)頁設(shè)計與網(wǎng)站維護(hù)、多媒體設(shè)計制作、數(shù)字媒體管理等工作。主干課程有:數(shù)字媒體技術(shù)概論、計算機(jī)科學(xué)與技術(shù)、藝術(shù)學(xué)、通信工程、C++語言程序設(shè)計、JAVA語言程序設(shè)計、計算機(jī)圖形學(xué)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫原理及應(yīng)用、 數(shù)字圖像處理、網(wǎng)頁設(shè)計與制作、流媒體技術(shù)、OpenGL編程與應(yīng)用、游戲開發(fā)等。該專業(yè)以基礎(chǔ)教育為根本,創(chuàng)新應(yīng)用為提高,主要通過開設(shè)全面的專業(yè)基礎(chǔ)課和應(yīng)用提高型選修課來實(shí)現(xiàn)這一專業(yè)特點(diǎn)。

計算機(jī)圖形學(xué)設(shè)在數(shù)字媒體技術(shù)專業(yè)大二下學(xué)期講授,將重點(diǎn)介紹計算機(jī)圖形學(xué)的基本概念、方法與算法,主要由五部分組成:第一部分是計算機(jī)圖形學(xué)的歷史、應(yīng)用、發(fā)展和前沿;第二部分是二維圖形處理技術(shù),包括基本圖元的生成、填充、裁剪、觀察與變換以及反走樣;第三部分是三維圖形處理技術(shù),包括三維圖形的投影、表示、消隱和真實(shí)感顯示;第四部分是曲線曲面,掌握經(jīng)典的Bezier曲線/曲面、B樣條曲線/曲面、NURBS曲線/曲面的概念及生成算法;第五部分是與人機(jī)交互相結(jié)合,介紹常規(guī)交互的基礎(chǔ)上,了解最新的自然人機(jī)交互知識。本課程的教學(xué)目標(biāo)是使學(xué)生掌握計算機(jī)圖形學(xué)的基本原理和基本方法,了解其發(fā)展方向及前沿成果,為今后從事計算機(jī)輔助設(shè)計和制造、計算機(jī)圖形處理,如虛擬現(xiàn)實(shí)、動漫設(shè)計、游戲開發(fā)等方面的工作打下良好的基礎(chǔ)。

3.具體教學(xué)措施

在計算機(jī)圖形學(xué)的課程教學(xué)中,對枯燥難懂的理論,教師應(yīng)力求講解清楚,圖文并茂,著重加強(qiáng)對學(xué)生上機(jī)實(shí)踐的計劃安排與現(xiàn)場指導(dǎo),以達(dá)到良好的教學(xué)效果。主要采用以下教學(xué)措施,來激勵和促進(jìn)學(xué)生對計算機(jī)圖形學(xué)的學(xué)習(xí)。

(1)“問題驅(qū)動式”教學(xué)

現(xiàn)代教育思想強(qiáng)調(diào)以培養(yǎng)學(xué)生發(fā)現(xiàn)、分析、解決問題的能力為主要目的,首先發(fā)現(xiàn)問題,這是認(rèn)識和解決問題的起點(diǎn),所以“問題驅(qū)動式”教學(xué)是許多現(xiàn)代教育家所提倡、推崇的教學(xué)方法,“問題驅(qū)動式”教學(xué)法的正確使用對于提高學(xué)生的素質(zhì),強(qiáng)化學(xué)生學(xué)習(xí)興趣,調(diào)動學(xué)生主觀能動性,培養(yǎng)學(xué)生創(chuàng)新能力有積極作用,在教學(xué)過程中,我們自始至終都圍繞問題而展開教學(xué)活動,激勵學(xué)生自覺思考、主動探索,引導(dǎo)學(xué)生不斷發(fā)現(xiàn)問題、提出問題、分析問題并最終解決問題,培養(yǎng)了學(xué)生的創(chuàng)造性思維。在專業(yè)教學(xué)中遵循這一自然規(guī)律,通過不斷的提出與教學(xué)內(nèi)容相關(guān)的問題,引導(dǎo)學(xué)生的課程學(xué)習(xí),再通過課程實(shí)際算法的講授,解決每個教學(xué)內(nèi)容之初提出的問題,不僅有利于同學(xué)對基礎(chǔ)知識的掌握,而且培養(yǎng)了學(xué)生針對實(shí)際問題的計算思維。

例如,在三維圖形處理技術(shù)部分內(nèi)容的講授之初,提出“真實(shí)感茶杯的繪制”問題,該問題以前面所學(xué)的二維圖形處理技術(shù)為基礎(chǔ),涉及茶杯三維模型的建立、投影變換、消隱技術(shù)以及真實(shí)感顯示等內(nèi)容,圍繞該簡單易實(shí)現(xiàn)的實(shí)例來講解該部分內(nèi)容,將打消學(xué)生的畏難情緒,提起學(xué)習(xí)興趣,學(xué)生實(shí)現(xiàn)后又能增強(qiáng)自信心。

圖1 學(xué)生實(shí)現(xiàn)的茶杯效果圖

(2)真實(shí)題目的實(shí)踐教學(xué)

充分利用計算機(jī)與信息學(xué)院的實(shí)驗(yàn)資源,采用課間實(shí)驗(yàn)和集中實(shí)驗(yàn)相結(jié)合的方式進(jìn)行實(shí)驗(yàn)安排,其中課間實(shí)驗(yàn)和相應(yīng)課程同步進(jìn)行,集中實(shí)驗(yàn)一般在相應(yīng)課程結(jié)束后集中進(jìn)行,以綜合性、設(shè)計型為主,旨在鍛煉綜合運(yùn)用知識,解決實(shí)際問題的能力。在學(xué)院的帶領(lǐng)下,不斷加強(qiáng)數(shù)字媒體技術(shù)實(shí)驗(yàn)室的建設(shè),培養(yǎng)學(xué)生動手操作能力。提出切合學(xué)生知識水平的實(shí)際題目,結(jié)合課程知識進(jìn)行實(shí)踐教學(xué)。

另外,通過校內(nèi)、校外實(shí)踐環(huán)節(jié)相結(jié)合的方式培養(yǎng)和發(fā)展學(xué)生創(chuàng)新和實(shí)踐動手能力。在實(shí)踐教學(xué)中,加強(qiáng)工程實(shí)踐、課程設(shè)計、畢業(yè)設(shè)計等環(huán)節(jié)中的工程訓(xùn)練,帶領(lǐng)學(xué)生到相關(guān)企業(yè)、研究所和高校參觀學(xué)習(xí),使學(xué)生初步接觸實(shí)際工程,從宏觀上理解數(shù)字媒體技術(shù)專業(yè)的架構(gòu)和發(fā)展方向。積極鼓勵和指導(dǎo)學(xué)生參加校級、省級、國家級各類學(xué)科競賽,如數(shù)學(xué)建模、電子設(shè)計、工業(yè)設(shè)計、挑戰(zhàn)杯和信息技術(shù)技能等大賽,鼓勵學(xué)有余力的學(xué)生根據(jù)學(xué)校合作企業(yè)的需求參加業(yè)余科研活動。

例如,結(jié)合校企合作項目,在課程實(shí)踐上設(shè)置三維游戲場景、角色設(shè)計、游戲綜合創(chuàng)作等圍繞游戲開發(fā)的綜合性實(shí)踐。應(yīng)用圖形學(xué)的基本圖元生成算法、掃描線填充算法、種子填充算法、坐標(biāo)變換等創(chuàng)建模型,并利用程序設(shè)計語言設(shè)計小型動畫作品,如蝴蝶花間飛舞、茶葉沉降動畫等。

圖2 學(xué)生設(shè)計作品抓圖

(3)培養(yǎng)興趣的前沿技術(shù)介紹

興趣是學(xué)習(xí)的原動力,因此應(yīng)充分利用該專業(yè)豐富多彩的多媒體作品激發(fā)學(xué)生的學(xué)習(xí)和創(chuàng)作興趣,鼓勵學(xué)生動手實(shí)踐。運(yùn)用啟發(fā)式、討論式等先進(jìn)的教學(xué)方法提高學(xué)生獨(dú)立思考和綜合分析問題的能力,給學(xué)生方法論、發(fā)散思維、多維思想等啟迪,給學(xué)生開設(shè)本學(xué)科前沿知識講座,開闊學(xué)生的視野,培養(yǎng)學(xué)生的科學(xué)素養(yǎng),培養(yǎng)學(xué)生的學(xué)習(xí)興趣,并注重學(xué)生應(yīng)用技能的培養(yǎng)和提高,在應(yīng)用中反思基本的原理和知識。

例如,最新的數(shù)字電影和視頻展示、新穎的平面廣告設(shè)計、先進(jìn)的工業(yè)品造型設(shè)計、環(huán)境藝術(shù)設(shè)計及建筑表現(xiàn),Kinect在虛擬現(xiàn)實(shí)中的應(yīng)用,交互感知技術(shù)發(fā)展,AR增強(qiáng)現(xiàn)實(shí)技術(shù)等。

4.結(jié)語

總之,計算機(jī)圖形學(xué)作為一門基本的理論算法類課程,在教學(xué)中不能過多地強(qiáng)調(diào)理論問題,而應(yīng)結(jié)合其在數(shù)字媒體技術(shù)中的應(yīng)用來講,明確計算機(jī)圖形學(xué)的教學(xué)目的是與后面的游戲引擎相結(jié)合,在內(nèi)容的取舍上側(cè)重OpenGL的應(yīng)用,結(jié)合實(shí)際問題,在實(shí)際應(yīng)用中激發(fā)學(xué)生學(xué)習(xí)興趣,以“問題驅(qū)動式”教學(xué)方法,促進(jìn)學(xué)生的基礎(chǔ)知識學(xué)習(xí),面向項目的案例教學(xué)模式,開展綜合性實(shí)踐教學(xué),為優(yōu)秀學(xué)生提供發(fā)展平臺。在教學(xué)過程中,不斷收集整理學(xué)生作品,作為課程實(shí)例進(jìn)行展示和講解,提高學(xué)生的自我認(rèn)同感和自信心;以學(xué)生作品或課程素材形式放在課程網(wǎng)站上,為打造有專業(yè)特色的計算機(jī)圖形學(xué)課程服務(wù),在原有教學(xué)基礎(chǔ)上針對性地提高。

參考文獻(xiàn):

[1]杭后俊. 計算機(jī)專業(yè)計算機(jī)圖形學(xué)教學(xué)實(shí)踐探討[J]. 計算機(jī)教育,2012(17):76―79.

[2]葉福軍,潘瑞芳,張帆. 復(fù)合型數(shù)字媒體技術(shù)專業(yè)人才培養(yǎng)探討[J]. 新聞界,2009(4):126―127轉(zhuǎn)125.

第6篇:計算機(jī)圖形學(xué)課程范文

關(guān)鍵詞:計算機(jī)圖形學(xué);可視化教學(xué)系統(tǒng)

中圖分類號:TP391 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2013)34-7750-03

計算機(jī)圖形學(xué)主要研究用計算機(jī)進(jìn)行圖形生成、處理、輸出與顯示的基本原理和算法的學(xué)科;是計算機(jī)應(yīng)用中的重要分支之一。此教學(xué)系統(tǒng)設(shè)計使學(xué)習(xí)者掌握了解計算機(jī)圖形學(xué)中圖形的基本算法及其實(shí)現(xiàn),提高學(xué)習(xí)者算法設(shè)計能力和編程實(shí)踐能力。

1 系統(tǒng)設(shè)計

由于圖形學(xué)算法具有一定的抽象性、難于理解并且枯燥,學(xué)習(xí)者難于從通過執(zhí)行的靜態(tài)代碼來想象圖形數(shù)據(jù)結(jié)構(gòu)的動態(tài)變化,從而喪失了學(xué)習(xí)該課程的主動性和積極性。為了讓學(xué)習(xí)者對圖形學(xué)算法原理有清晰的認(rèn)識和直觀的印象,提高學(xué)習(xí)興趣,目前出現(xiàn)了一大批借助多媒體技術(shù)手段的圖形學(xué)教學(xué)輔助軟件,但這些軟件普遍都存在以下這些問題:1)教學(xué)軟件只是課本的電子版本,課本上的文字和圖片被一層不變的搬到教學(xué)軟件上,基本算法的講解部分,也只是把算法原理和算法實(shí)現(xiàn)以字符的形式表現(xiàn)出來。2)算法采用FLASH動畫演示,但只是按預(yù)先設(shè)定好的某種情況來描述算法,學(xué)習(xí)者不能輸入不同條件來改變輸出結(jié)果,也無法控制動畫演示的速度,缺乏交互性和智能型,無法滿足學(xué)習(xí)者個性化學(xué)習(xí)。3)采用可視化編輯工具C++或JAVA實(shí)現(xiàn)部分算法的動態(tài)演示,存在一定的交互性,滿足自主探究學(xué)習(xí),但這些軟件沒有涵蓋所有基本算法的動態(tài)演示過程,缺乏在線協(xié)作學(xué)習(xí)等功能。

針對以上一些不足,本系統(tǒng)建立虛擬柵格和以可見點(diǎn)模擬人眼不可見的像素點(diǎn),利用可視化技術(shù)以動畫形式模擬該課程基本算法的實(shí)現(xiàn)過程、難理解的知識點(diǎn)和抽象概念,注重運(yùn)用交互控制技術(shù),學(xué)習(xí)者可以針對不同的算法進(jìn)行參數(shù)修改和演示速度的調(diào)整,開發(fā)了題目實(shí)時更新的課后練習(xí)系統(tǒng),還利用SOCKET技術(shù)開發(fā)了群聊工具,滿足學(xué)習(xí)者自主學(xué)習(xí)、探究式學(xué)習(xí)、協(xié)作學(xué)習(xí)。該系統(tǒng)建立了授課、測試以及師生互動等體系,為教學(xué)建立一個完善的有好的教學(xué)平臺。

1)技術(shù)路線

可視化編程工具C++ Buidler6.0將課程涉及到一些算法可視化實(shí)現(xiàn),包括直線、曲線生成、圓、橢圓生成、直線段裁剪、多邊形填充、分形模擬的動態(tài)演示。滿足個性化學(xué)習(xí),提高教學(xué)效率和教學(xué)效果。提高教學(xué)質(zhì)量教學(xué)演示和模擬,對一些抽象概念、理論等實(shí)現(xiàn)模擬對計算機(jī)圖形點(diǎn)、線、面的生成的原理介紹,多種直線、橢圓、圓、曲線、曲面的生成算法介紹以及生動的算法演示,以幫助學(xué)生在課后復(fù)習(xí)鞏固課堂學(xué)習(xí)重點(diǎn)、理解圖形在計算機(jī)中的生成原理、掌握計算機(jī)中的圖形生成的算法??梢暬虒W(xué)軟件可以展示出算法執(zhí)行的過程,可以幫助學(xué)習(xí)者更好地理解算法內(nèi)容,掌握其實(shí)質(zhì)。模擬人眼看不見的屏幕像素,并且以動畫的形式完成個性算法動畫演示過程。

GDI圖形處理技術(shù),采用C++面向?qū)ο笳Z言來完成課件的制作,達(dá)到優(yōu)秀的運(yùn)行效率。在系統(tǒng)中,制作了圖象放大演示可以讓學(xué)習(xí)者了解到在計算機(jī)中圖形的真實(shí)一面;學(xué)生可以在二維圖形的幾何變換中自己畫圖,自由變換,使學(xué)生從最基本的圖形變換了解計算機(jī)中的動畫原理;在三維立方體的空間運(yùn)動演示中和貝塞爾曲面的透視演示,學(xué)生可以感受到三維的震撼效果并且理解在計算機(jī)中3D建模的原理。

2)設(shè)計理論依據(jù)

計算機(jī)程序、數(shù)據(jù)結(jié)構(gòu)向?qū)W習(xí)者傳受時存在著說明表現(xiàn)、演示過程等方面的不足,設(shè)計此系統(tǒng)將程序執(zhí)行過程以及數(shù)據(jù)演變過程形象地在計算機(jī)屏幕上以動態(tài)圖形方式表現(xiàn)出來。比如,當(dāng)運(yùn)行一個可視化的算法程序時,數(shù)據(jù)結(jié)構(gòu)和程序功能就可以將程序中不易理解的算法特征用圖形方式動態(tài)地顯示在屏幕上,因此加深了用戶對程序行為的理解和認(rèn)識,也準(zhǔn)確地讓學(xué)習(xí)者了解和分析程序執(zhí)行過程所反映的邏輯含義和功能。

算法可視化教學(xué)能展現(xiàn)運(yùn)動過程,能彌補(bǔ)課本中只能以插圖和文字說明的局限性,同時培養(yǎng)學(xué)生的觀察力、想象力和邏輯思維能力。算法過程可視化強(qiáng)調(diào)提供解決實(shí)際問題的原型,它必須滿足兩個要求:①提供真實(shí)性任務(wù),這樣能充分了解自己所要解決的問題,②目標(biāo)具有復(fù)雜性,能引起學(xué)生進(jìn)行深層次考慮,激發(fā)學(xué)生的內(nèi)部動機(jī)。比如在實(shí)現(xiàn)圖形學(xué)課程中圓的掃描轉(zhuǎn)換算法時,在標(biāo)記出生成哪些像素的同時,給出相應(yīng)程序的執(zhí)行過程中變量的實(shí)時變化,它讓學(xué)生在短時間內(nèi)充分認(rèn)識并體會掃描轉(zhuǎn)換過程的每一狀態(tài)及變化。這類可視化目標(biāo)的設(shè)計也強(qiáng)調(diào)交互式控制,用戶可以懸著不同算法,對半徑進(jìn)行修改,調(diào)整演示速度等,這樣教學(xué)者便可以依據(jù)講解內(nèi)容和學(xué)生的反應(yīng)來隨時調(diào)整教學(xué)過程。

該程序具有動態(tài)交互的優(yōu)勢,通過改變參數(shù),學(xué)習(xí)者很容易能發(fā)現(xiàn)圖形隨參數(shù)的變化而改變的規(guī)律,從而從真正意義上實(shí)現(xiàn)交互性。除此之外,界面友好、顯示清晰、邏輯性強(qiáng)、使用方便、科學(xué)性強(qiáng)都是它的優(yōu)秀之處。

3)完善的輔助教學(xué)平臺

利用SOCKET技術(shù)開發(fā)了群聊工具,建立起完成的授課、測試以及實(shí)驗(yàn)教學(xué)、信息、師生互動等體系,為計算機(jī)圖形學(xué)教學(xué)實(shí)驗(yàn)建立以個完善的教學(xué)輔助平臺。整合留言系統(tǒng)、電子白板等多種交互系統(tǒng),為教師與學(xué)生提供了方便、適合的交流工具,達(dá)到教室、實(shí)驗(yàn)室在網(wǎng)絡(luò)上的延伸,突破了空間的概念,并且把教師和學(xué)生緊密聯(lián)結(jié)在一起。

本系統(tǒng)中包含一些使用計算機(jī)圖形學(xué)知識完成的優(yōu)秀作品。這些作品穿插在知識體系中使學(xué)生感受到學(xué)好這門課的重要性。同時提供豐富的課后習(xí)題供學(xué)生訓(xùn)練。如果覺得做的題目都是以前做過的,還可以通過SOCKET技術(shù)完成的在線討論區(qū)以及留言板功能老師提出更新的題庫的請求。若是碰到難題還可登錄該討論區(qū),與同學(xué)、與老師一起討論。在這里老師和學(xué)生無身份區(qū)別,完全可以自由討論。而老師可以在合適的時候?yàn)樵鹊念}庫添加一些新的題目供學(xué)生訓(xùn)練。

計算機(jī)圖形學(xué)是研究計算機(jī)生成、處理、顯示和輸出圖形的學(xué)科。而圖形學(xué)的教學(xué)關(guān)鍵是如何將圖形的生成以更加生動和直觀的方法展示給學(xué)習(xí)者,使學(xué)習(xí)者更能深入的理解計算機(jī)圖形學(xué)的理論和算法原理。

2 結(jié)論與展望

計算機(jī)圖形學(xué)是計算機(jī)學(xué)科的一個重要發(fā)展方向,學(xué)習(xí)計算機(jī)圖形學(xué)課程之后,有利于讀者向科學(xué)計算、計算機(jī)輔助設(shè)計、計算機(jī)仿真、信息數(shù)據(jù)的可視化、虛擬顯示、動畫與游戲、數(shù)字娛樂、數(shù)字設(shè)計等計算機(jī)應(yīng)用行業(yè)方向發(fā)展。人們會對計算機(jī)圖形學(xué)的研究對象、研究方法、編程實(shí)現(xiàn)、等問題認(rèn)識不足而產(chǎn)生局限性,向?qū)W習(xí)計算機(jī)知識的者普及計算機(jī)圖形學(xué)的教學(xué),可以為解決計算機(jī)基礎(chǔ)教育不能直接解決用戶面臨的實(shí)際應(yīng)用問題的尷尬、彌補(bǔ)現(xiàn)教學(xué)中計算機(jī)仿真等環(huán)節(jié)的缺失、使計算機(jī)應(yīng)用程序設(shè)計從“經(jīng)驗(yàn)教學(xué)培養(yǎng)模式”到“科學(xué)理念式教學(xué)培養(yǎng)模式”轉(zhuǎn)變,以及計算機(jī)類教學(xué)中起來一個良好的示范作用。

參考文獻(xiàn):

[1] Peter Shirley.計算機(jī)圖形學(xué)[M].高春曉,譯.北京:人民郵電出版社,2007.

[2] 魏俊鵬,于秋生.C++ Builder 6實(shí)用編程100例[M].北京:中國鐵道出版社,2004.

[3] Erich Gamma.設(shè)計模式[M].李英軍,等,譯.北京:機(jī)械工業(yè)出版社,2007.

第7篇:計算機(jī)圖形學(xué)課程范文

90年代初登陸上海的TI圖形計算器結(jié)合相應(yīng)的傳感器,能幫助學(xué)生獲得真實(shí)而相近的第一手資料,同時還能自動而迅速地分析數(shù)據(jù)以供學(xué)生參考,在研究型課程中有著廣泛的用途。

我們知道,在中學(xué)開展化學(xué)研究型課程有相當(dāng)難度。

首先是條件上。在上海中學(xué)化學(xué)實(shí)驗(yàn)室里,儀器設(shè)備雖談不上陳舊簡陋,但要利用現(xiàn)有儀器解決實(shí)際問題卻有些難度。

其次是教師。在風(fēng)起云涌的課改浪潮中, 有一些教師運(yùn)用開公開課的機(jī)會進(jìn)行主題式教學(xué),言必談“研究”,可實(shí)際上是老師在研究,學(xué)生跟著看而已。教師的理念仍需改進(jìn)。

再有就是多媒體的誤導(dǎo)。時下,教師精心制作多媒體課件,或由學(xué)生做課件,課堂上以匯報形式告訴另一些學(xué)生,已成為時尚的公開課模式。仍然缺乏交互性的多媒體教育手段不能讓學(xué)生主動參與課堂上動態(tài)的認(rèn)知過程。這種現(xiàn)代教育方式只能成為教師的演示工具,學(xué)生從黑板的仰望者變成屏幕的觀看者,難以成為學(xué)生自主學(xué)習(xí)、進(jìn)行探索和發(fā)現(xiàn)有認(rèn)知工具。

而TI圖形計算器則不同。機(jī)器雖小但內(nèi)涵豐富,載入不同的程序,輔以不同的傳感器,可以完成多種任務(wù)。人手一機(jī)的操作形式使學(xué)生擁有了更多的主動權(quán)。同樣一個問題,不同的學(xué)生可以有不同的處理方式,但目標(biāo)只是一個。而且,課題小組合作討論的學(xué)習(xí)方式為每位小組成員創(chuàng)設(shè)了均等發(fā)表見解的機(jī)會,學(xué)生將不僅從教師處獲得知識和方法,還可以從小組成員身上得到啟示。

比如有這樣一個問題:

等pH的HAc和HCl溶液,分別稀釋m、n倍,若稀釋后pH值依然相等,求m與n的關(guān)系。

在傳統(tǒng)實(shí)驗(yàn)室找不到等pH值的HAc和HCl溶液,TI圖形計算器能做到。TI圖形計算器上連接兩個pH傳感器,并將傳感器分別置于相近濃度的HAc和HCl溶液中,調(diào)節(jié)兩溶液中加入水的量至顯示pH相等。

后面的操作很簡單,只要向剛剛獲得的等pH的HAc和HCl溶液中分別加水至第二次pH值相等,比較加水量多少就可以了。

學(xué)生初始方案:各取50ml等pH值的HAc和HCl溶液于燒杯中,然后分別加水,觀察pH變化。

結(jié)果:儀器沒有多大動靜。

疑問:是傳感器不靈敏嗎?

查閱儀器說明書:瞬時感應(yīng),誤差0.01%。

教師提示:50ml pH=1的HCl稀釋到多少ml才能使pH變?yōu)??

學(xué)生頓悟:強(qiáng)酸pH變化1個單位,需要稀釋10倍。剛剛稀釋的程度太小了。

學(xué)生修改方案:各取5ml等pH值的HAc和HCl溶液于500ml燒杯中,然后分別加水,觀察pH變化。

結(jié)果:500ml燒杯中的5ml溶液根本沒法浸沒傳感器感應(yīng)部位。

學(xué)生大失所望,一籌莫展。這時有個學(xué)生不經(jīng)意中畫了一張pH-V水圖(圖1),小組另一個成員得到了啟示,畫了另一張圖:pH-V酸圖(圖2)。

經(jīng)過認(rèn)真討論,學(xué)生一致認(rèn)可以下方案:兩個100ml燒杯中各加入50ml水,分別逐滴滴加pH相等的HAc和HCl,觀察pH變化快慢程度。

結(jié)果:加HAc的溶液pH變化要慢一些。

結(jié)論:酸1為HCl,酸2為HAc。從圖象上可看出,要使同等pH的兩種酸稀釋后pH依然相等,HAc所需的水更多一些。所以本題答案m>n。

第8篇:計算機(jī)圖形學(xué)課程范文

三維動畫作為一種新興的動畫形式,近幾年發(fā)展非常迅速,逐漸成為了主流的動畫形式。中國開展動畫專業(yè)的高?,F(xiàn)在也都基本開設(shè)了針對三維動畫的課程。三維動畫不同于傳統(tǒng)的二維手繪動畫,是和計算機(jī)技術(shù)結(jié)合非常緊密的一門交叉學(xué)科,基本所有的制作過程都要借助于計算機(jī)硬件和軟件,這使得三維動畫的教育方式和方法需要同傳統(tǒng)的二維動畫教育區(qū)分開來,不論從教學(xué)方法還是教學(xué)內(nèi)容都需要進(jìn)行很大調(diào)整。國內(nèi)三維動畫教育目前還處于起步和摸索階段,相比較來說,歐美發(fā)達(dá)國家三維動畫教育起步較早,發(fā)展也相對完善。如果可以吸收和借鑒其中成功的經(jīng)驗(yàn),并加以利用,一定能對中國的三維動畫教育幫助良多,解決目前存在的一些問題,并能推進(jìn)國內(nèi)整個三維動畫產(chǎn)業(yè)的發(fā)展。在所有的歐洲三維動畫教育中,英國的教育模式是比較富有代表性的也是發(fā)展較為成功的。英國高校的三維動畫教育一般采取三位一體的教學(xué)模式。其中包括計算機(jī)圖形學(xué)技術(shù)的學(xué)習(xí),藝術(shù)知識的學(xué)習(xí)和計算機(jī)應(yīng)用軟件的學(xué)習(xí)。這三方面互為補(bǔ)充,構(gòu)成了一個比較完善的教學(xué)體系。

一、計算機(jī)圖形學(xué)技術(shù)的學(xué)習(xí)

目前中國國內(nèi)的三維動畫產(chǎn)業(yè)發(fā)展較慢,也較為混亂,是和缺乏足夠的計算機(jī)技術(shù)相關(guān)的。而計算機(jī)圖形學(xué)技術(shù)的學(xué)習(xí)也是目前中國三維動畫教育中比較欠缺,急需改進(jìn)的重點(diǎn)。因?yàn)槿S動畫里面的各種效果都是產(chǎn)生于與之相對應(yīng)的各種計算機(jī)技術(shù)。例如海浪,火焰,毛發(fā),還有模擬各種真實(shí)的動作等。沒有相應(yīng)的計算機(jī)技術(shù),也無從談起三維動畫。也正是各種各樣日新月異的計算機(jī)技術(shù)推動了三維動畫在世界領(lǐng)域的快速發(fā)展。所以,軟件開發(fā)技術(shù)不論從任何方面都是三維動畫領(lǐng)域里面的重中之重。英國三維動畫教育很重視這方面技術(shù)的教學(xué)和實(shí)踐,也針對這些技術(shù)也開設(shè)了一系列課程。例如面向現(xiàn)在比較熱門的Mo-tionCapture(動作捕捉)技術(shù),英國的Bristol大學(xué)的CharacterAn-imation(人物動畫)專業(yè)就開設(shè)立了MotionCaptureRetargeting方向的研究工作,主要面向解決MotionCapture后人物動作變形的問題,并在這一領(lǐng)域取得了一定成功。而類似Bristol大學(xué)的例子還有很多。Bournemouth大學(xué)甚至開設(shè)了計算機(jī)動畫(ComputerAnima-tion)的博士生項目,并和中國的高校建立了合作關(guān)系。由此我們可以看出,英國的三維動畫教育很重視計算機(jī)圖形學(xué),特別是三維圖形學(xué)的教育工作。而且強(qiáng)調(diào)三維圖形學(xué)和三維動畫有機(jī)的整合在一起,使學(xué)生能真正理解三維動畫的原理,有能力去開發(fā)和拓展三維動畫領(lǐng)域。相比較來說,中國的三維動畫教育一直忽視計算機(jī)圖形學(xué)技術(shù)的教學(xué)和科研,導(dǎo)致學(xué)生嚴(yán)重缺乏必要的計算機(jī)技術(shù),這也大大桎梏了三維動畫在中國的發(fā)展。

二、藝術(shù)知識的學(xué)習(xí)

眾所周知,三維動畫的的魅力是由動畫藝術(shù)本身獨(dú)特的特點(diǎn)所體現(xiàn)出來的,對于動畫藝術(shù)知識的學(xué)習(xí)自然是學(xué)好三維動畫學(xué)科的基礎(chǔ)。除了和中國基本相同的美術(shù)設(shè)計知識學(xué)習(xí)之外,英國的動畫專業(yè)教育很重視電影學(xué)知識的學(xué)習(xí),也針對性的開設(shè)了一系列課程。例如Bristol大學(xué)的CharacterAnimation(人物動畫)專業(yè)就跟戲劇專業(yè)(DramaDepartmen)t合作開設(shè)了FromBodytoAvatar,ProjectDesignandStoryboarding等課程。專門講授塑造人物性格,編排劇情,制作故事板,剪輯電影,添加音效等方面的內(nèi)容。這些課程對于設(shè)計,制作和最后完成三維動畫都很有必要。目前中國高校的三維動畫教育對于美術(shù)知識的教育還是比較重視的,可是針對電影學(xué)方面的課程安排較少。如果能夠參照英國的教學(xué)模式,適當(dāng)增加電影學(xué)的教學(xué)環(huán)節(jié),對于學(xué)生對于動畫知識的全面了解和制作動畫都會帶來很多益處。

三、計算機(jī)應(yīng)用軟件的學(xué)習(xí)

毫無疑問計算機(jī)應(yīng)用軟件的學(xué)習(xí)也是三維動畫教育中必不可少的一環(huán),只知道原理卻不會操作各種應(yīng)用軟件將會寸步難行。這些軟件包括Maya,Premiere,AE,Photoshop,Audition等等。大型軟件的應(yīng)用在未來的三維動畫發(fā)展中也會越來越重要。在英國的三維動畫教育中,不論是本科還是研究生教育都有很大一部分比例的學(xué)分專門為這些課程安排的。這其中Maya作為權(quán)威的三維動畫制作工具,是最難,最花時間,也是最重要的。學(xué)生通過課堂上的學(xué)習(xí)只是了解其基本操作,真要做到熟悉操縱Maya還要通過長時間的上機(jī)和實(shí)踐。在國外的三維動畫教育中,老師一般只花很少時間教學(xué)生操作,更多是給學(xué)生布置一些作業(yè),在完成作業(yè)的過程中進(jìn)行實(shí)踐。針對中國的三維動畫教育,應(yīng)當(dāng)適當(dāng)延長計算機(jī)軟件課程的教授時間,因?yàn)橹蛔寣W(xué)生自己摸索,對于Maya這樣復(fù)雜的軟件實(shí)在勉為其難。何況Maya是全英文軟件,對于中國學(xué)生是很有必要詳細(xì)解釋各種操作的。

第9篇:計算機(jī)圖形學(xué)課程范文

關(guān)鍵詞:圖形編程;計算機(jī)圖形學(xué);教學(xué)模式;OpenGL

中圖分類號:TP434文獻(xiàn)標(biāo)識碼:A文章編號:1672-7800(2013)006-0148-02

基金項目:武漢紡織大學(xué)教研項目(2010020)

作者簡介:陳永強(qiáng)(1967-),男,博士,武漢紡織大學(xué)數(shù)學(xué)與計算機(jī)學(xué)院教授,研究方向?yàn)橛嬎銠C(jī)圖形圖像處理。

1國內(nèi)教學(xué)現(xiàn)狀

為有助于學(xué)生學(xué)習(xí)和理解計算機(jī)圖形學(xué)的基本概念、原理與算法,需要結(jié)合形象化的圖形編程實(shí)例和實(shí)驗(yàn)來補(bǔ)充說明和練習(xí)。國內(nèi)教材和教學(xué)中計算機(jī)圖形學(xué)案例和實(shí)驗(yàn)圖形編程選用的編程語言有C、C++和Java。Java主要面向嵌入式設(shè)備和網(wǎng)絡(luò)使用,目前PC機(jī)上軟件編程教學(xué)通常采用C和C++編程語言,選擇的圖形開發(fā)環(huán)境是在VC++里使用控制臺應(yīng)用程序、MFC可執(zhí)行程序、OpenGL開放圖形庫、Direct3D圖形庫等幾種方式。

在課時有限的前提下,由于沒有結(jié)合使用圖形庫的圖形編程案例,加上實(shí)驗(yàn)難度較大,導(dǎo)致學(xué)生學(xué)習(xí)興趣降低而很難完成理論學(xué)習(xí)和實(shí)驗(yàn)項目。Direct3D是微軟公司在Microsoft Windows操作系統(tǒng)上所開發(fā)的一套3D圖形編程接口,是DirectX的一部分,僅能在Windows平臺使用,平臺移植性差。OpenGL是一個專業(yè)的圖形編程接口和功能強(qiáng)大的開放圖形庫,提供了基本的函數(shù)庫,涵蓋了開發(fā)二、三維圖形程序所需的各個方面。OpenGL獨(dú)立于窗口系統(tǒng)和操作系統(tǒng),開發(fā)的應(yīng)用程序可以十分方便地在各種平臺間移植,且與VC++接口緊密。因此,在VC++里結(jié)合OpenGL圖形庫開展計算機(jī)圖形學(xué)課程的輔助教學(xué)是最佳選擇。

2結(jié)合OpenGL的教學(xué)模式

開放圖形庫OpenGL是一個性能卓越的開放圖形編程接口(API),適用于廣泛的計算機(jī)環(huán)境,具有使用簡便、高效率、穩(wěn)定可靠、性能高、可擴(kuò)展移植、適應(yīng)性強(qiáng)等特點(diǎn),是唯一真正開放、獨(dú)立于供應(yīng)商、跨平臺的圖形開發(fā)行業(yè)標(biāo)準(zhǔn),是圖形開發(fā)工作者必須掌握的開發(fā)工具。OpenGL具有模型繪制、模型觀察、顏色模式、光照材質(zhì)、圖像效果增強(qiáng)、位圖和圖象處理、紋理映射、雙緩存動畫、交互等功能。OpenGL主要由OpenGL核心庫(GL)、OpenGL實(shí)用程序庫(GLU)、OpenGL編程輔助庫(AUX)、OpenGL實(shí)用程序工具包(GLUT)、Windows專用庫(WGL)等函數(shù)庫組成。OpenGL圖形函數(shù)定義為獨(dú)立于任何程序設(shè)計語言的一組規(guī)范,在各種編程語言中,如C、C++、FORTRAN、Ada和Java等,都可以調(diào)用OpenGL的庫函數(shù)。

計算機(jī)圖形學(xué)課程的圖形編程實(shí)例和實(shí)驗(yàn)教學(xué)中,采用VC++結(jié)合OpenGL圖形庫,可以選擇控制臺應(yīng)用程序+OpenGL和MFC可執(zhí)行程序+OpenGL兩種模式之一。

2.1控制臺應(yīng)用程序+OpenGL模式

VC++里采用控制臺應(yīng)用程序+OpenGL的圖形編程模式實(shí)際上是一種用C語言調(diào)用OpenGL函數(shù)的面向過程的編程框架,其程序的基本結(jié)構(gòu)是定義窗口、清理窗口、繪制物體和結(jié)束運(yùn)行。

(1)頭文件包含。利用OpenGL實(shí)現(xiàn)圖形繪制,先要引入OpenGL核心庫GL及其它需要使用的GLU庫的頭文件,并要通過頭文件引入窗口系統(tǒng)。若使用GLUT庫函數(shù)進(jìn)行窗口管理,可只需要用GLUT代替GL和GLU的頭文件包含。

(2)使用GLUT庫實(shí)現(xiàn)窗口管理。首先用glutInit函數(shù)對GLUT初始化,處理所有命令行參數(shù),然后使用glutInitDisplayMode函數(shù)設(shè)定窗口顯示模式,包括緩存和顏色模型等;再使用默認(rèn)值設(shè)定顯示窗口的大小和位置,或使用glutInitWindowSize指定顯示窗口的大小和glutInitWindowPosition函數(shù)指定窗口左上角的屏幕位置;最后用glutCreateWindow函數(shù)創(chuàng)建一個帶有OpenGL渲染環(huán)境的窗口,參數(shù)是一個保存了窗口標(biāo)題名稱的字符串。

(3)利用OpenGL繪制圖形。繪制圖形前,要進(jìn)行窗口清屏,即先用glClearColor函數(shù)指定窗口的背景色,之后用glClear函數(shù)中指定的值設(shè)定顏色緩沖區(qū)值,即將窗口中每個像素的顏色設(shè)定為背景顏色。接著可使用glColor函數(shù)設(shè)置繪制圖形的顏色。

在繪制圖形時,先使用glMatrixMode和gluOrtho2D函數(shù)設(shè)定投影參數(shù),即把要繪制的三維圖形投影到顯示窗口。

然后調(diào)用一些OpenGL函數(shù)實(shí)現(xiàn)圖形的繪制,用glFlush函數(shù)通知圖形系統(tǒng)執(zhí)行繪制。此時,通常把重繪場景所需要的函數(shù)命令放入一個不帶任何參數(shù)的顯示回調(diào)函數(shù)里,通過glutDisplayFunc函數(shù)作為注冊函數(shù)將顯示回調(diào)函數(shù)注冊指定為當(dāng)前窗口的顯示內(nèi)容函數(shù)。類似地,可以用GLUT提供的其它注冊函數(shù)注冊相應(yīng)事件的回調(diào)函數(shù),處理用戶輸入或系統(tǒng)狀態(tài)改變等事件。

最后用gluMainLoop函數(shù)啟動主GLUT事件處理循環(huán),運(yùn)行程序顯示繪制窗口。

2.2MFC可執(zhí)行程序+OpenGL模式

微軟基礎(chǔ)類庫MFC是用來編寫Windows應(yīng)用程序的C++類集,以層次結(jié)構(gòu)組成,封裝了大部分Windows API函數(shù)和控件。利用MFC和向?qū)砭帉慦indows應(yīng)用程序,是VC++的一種面向?qū)ο缶幊谭椒?,其基本步驟先是使用應(yīng)用程序向?qū)蒞indows應(yīng)用程序的基本框架,然后用類向?qū)磉M(jìn)行應(yīng)用程序的類的建立、消息處理、數(shù)據(jù)處理函數(shù)或定義控件的屬性、事件和方法,最后把應(yīng)用程序所要求的功能添加到類中。

在VC++里編寫一個通用基礎(chǔ)框架的空OpenGL應(yīng)用程序,在此基礎(chǔ)上通過添加其它代碼就可完成案例程序和實(shí)驗(yàn)程序。

(1)創(chuàng)建VC程序。運(yùn)用VC++應(yīng)用程序向?qū)?,選擇MFC可執(zhí)行程序,建立一個新的單文檔應(yīng)用程序工程,工程包含Doc、View、App、MainFrame和ChildFrame 5個類。通用基礎(chǔ)框架的空OpenGL應(yīng)用程序主要涉及View類程序修改。

(2)設(shè)置OpenGL基礎(chǔ)庫。在View類頭文件和Project Settings對話框里的General頁面里包含OpenGL頭文件和函數(shù)庫文件。

(3)設(shè)置像素格式與創(chuàng)建渲染描述表。OpenGL不使用Windows設(shè)備描述表,是使用渲染描述表完成圖形圖像的映射,描述表的映射核心是像素格式的設(shè)置。在工程的View類文件里,通過初始化PIXELFORMATDESCRIPTOR結(jié)構(gòu)、設(shè)置和測像素格式來完成對像素屬性的設(shè)置,包括緩存設(shè)置、顏色模式、顏色位數(shù)、深度緩沖位數(shù)等。在響應(yīng)工程View類的Windows消息WM_CREATE的消息響應(yīng)函數(shù)OnCreate里創(chuàng)建并當(dāng)前化一個渲染描述表,在響應(yīng)Windows消息WM_DESTROY的消息響應(yīng)函數(shù)OnDestroy里使渲染描述表非當(dāng)前化并刪除,消息響應(yīng)函數(shù)里調(diào)用創(chuàng)建wglCreateContext、當(dāng)前化wglMakeCurrent、刪除wglDeleteContext等管理渲染描述表的OpenGL函數(shù)。

(4)設(shè)置OpenGL風(fēng)格。只有OpenGL的客戶區(qū)才能接受OpenGL的繪制,要在View類的PreCreateWindow函數(shù)里用WS_CLIPCHILDREN和WS_CLIPSIBLINGS設(shè)置OpenGL風(fēng)格。

(5)設(shè)置OpenGL視點(diǎn)。在當(dāng)前化渲染描述表之后,獲取客戶區(qū)的大小、清除深度緩存、啟動深度測試和OpenGL模型變換,然后在響應(yīng)Windows消息WM_SIZE的消息響應(yīng)函數(shù)OnSize里建立視點(diǎn),啟動透視變換,建立透視體。

完成上述步驟后,即建立了一個通用基礎(chǔ)框架的空OpenGL應(yīng)用程序。在通用基礎(chǔ)框架的空OpenGL應(yīng)用程序基礎(chǔ)上,在工程View類的消息響應(yīng)函數(shù)OnDraw里可用OpenGL函數(shù)繪制圖形。

2.3兩種模式比較

相比較而言,控制臺應(yīng)用程序+OpenGL模式較簡單。教師教學(xué)準(zhǔn)備方便,學(xué)生在掌握基本C語言編程知識和OpenGL實(shí)用程序工具包GLUT的窗口管理方法基礎(chǔ)上,可集中精力學(xué)習(xí)OpenGL的圖形繪制技術(shù)。學(xué)生學(xué)習(xí)理解容易、上手快,數(shù)學(xué)效果明顯。但這個模式與實(shí)際的主流圖形軟件開發(fā)方式有一定距離,實(shí)用性差,適用范圍窄。

MFC可執(zhí)行程序+OpenGL模式則要復(fù)雜一些。學(xué)生需學(xué)習(xí)《C++語言程序設(shè)計》和《可視化程序設(shè)計》前修課程,能較好地理解MFC可視化編程機(jī)制和框架,了解MFC文檔視結(jié)構(gòu)、Windows消息響應(yīng)、Windows標(biāo)準(zhǔn)控件等知識。在了解OpenGL的Windows專用庫函數(shù)設(shè)置像素格式與創(chuàng)建渲染描述表的方法后,再開始學(xué)習(xí)OpenGL的圖形繪制技術(shù)。這個模式里的MFC編程框架與OpenGL圖形繪制關(guān)系復(fù)雜,要求掌握的預(yù)備知識較多,學(xué)習(xí)時間較長,學(xué)生需有一定的編程能力。但它符合面向?qū)ο蟮能浖_發(fā)方式,學(xué)生一旦掌握熟練,對今后從事軟件開發(fā)工作大有益處。

參考文獻(xiàn):

[1]杜利峰,李竹林.基于OpenGL的計算機(jī)圖形學(xué)教學(xué)改革探索[J].電子設(shè)計工程,2012(13) .

[2]陸楓,何云峰.計算機(jī)圖形學(xué)基礎(chǔ)[M].北京:電子工業(yè)出版社,2008.