如何在vc++中用mfc進行opengl編程

如何在vc++中用mfc進行opengl編程

ID:3902627

大?。?27.58 KB

頁數(shù):5頁

時間:2017-11-25

如何在vc++中用mfc進行opengl編程_第1頁
如何在vc++中用mfc進行opengl編程_第2頁
如何在vc++中用mfc進行opengl編程_第3頁
如何在vc++中用mfc進行opengl編程_第4頁
如何在vc++中用mfc進行opengl編程_第5頁
資源描述:

《如何在vc++中用mfc進行opengl編程》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、萬方數(shù)據(jù)第21卷第8期計算機應(yīng)用V01.21.No.82001年8月C0mputerApplic砒ionsAug.,2001———————————————————————————————————————————————————————————一一_文章編號:1001—9081(2001)08—0087一03如何在VC++中用MFC進行OpenGL編程胡偉,王弘(華中科技大學(xué)動力工程系,湖北武漢430074)摘要:介紹了OpenGL的基本概念及其基本程序結(jié)構(gòu),通過對用標準C和用MFC這兩種方法進行OpenGL編程的相通點的分析

2、,詳細敘述了如何在VC++中用MFC編寫openGL程序的一般過程。關(guān)鍵詞:OpenGL;MFC;設(shè)備描述表(DC);繪制描述表(RC)中圖分類號:哪!1.73文獻標識碼:A1簡介隨著三維圖形的應(yīng)用越來越廣泛,計算機圖形學(xué)的發(fā)展也越來越迅速,各種圖形應(yīng)用軟件也就隨之應(yīng)運而生。OpenGL(()penGI印Ilicubrary,開放性圖形庫)是目前比較完善的三維圖形標準,已被廣泛的用于可視化技術(shù)、實體造型、c^D/cAM、模擬仿真等諸多領(lǐng)域。0penGL作為一種硬件圖形的軟件接口,其優(yōu)點是作為一個獨立的工作平臺,獨立于硬件設(shè)備

3、、窗口系統(tǒng)和操作系統(tǒng),用它編寫的軟件可以在u面x、windows950sR2、Windows98/NT/2000等系統(tǒng)間移植。openGL編程類似于c編程,實際接口就是c,所以市面上的很多有關(guān)()penGL的書中的程序都是使用標準c(或是WiIl32ConsoleAppuc撕0n)調(diào)用0penGL函數(shù)實現(xiàn)的。這樣做,只是為了使讀者盡快地掌握OpenGL的基本操作。但是,0pencL僅僅是一個包含120多個圖形函數(shù)的圖形庫,并沒有窗口函數(shù)(盡管0penGL的輔助庫提供了一些窗口和事件管理的函數(shù),但是這些函數(shù)在實際應(yīng)用中是遠遠不

4、夠的。),它缺乏面向?qū)ο竽芰?,不符合當前流行的軟件設(shè)計思想。因此我們需要借助一個“窗口”系統(tǒng)來完成0p朗GL三維圖形的制作。Vc++中的MFC包含了強大的基于Wi抵的應(yīng)用框架,提供了豐富的窗口和事件管理函數(shù),已經(jīng)成為當前一種比較流行的工作平臺。于是我們可以使用Ⅻ陀調(diào)用Ope以L函數(shù)來實現(xiàn)三維圖形的制作。2OpenGL的基本程序結(jié)構(gòu)2.1定義窗口即定義所制作的三維圖形在Windows屏幕坐標系中的顯示位置,定義所顯示圖形窗口的大小、窗口的性質(zhì)。2.2初始化包括初始化一些基本操作,如清緩存區(qū)(bu&r)、定義光照模型、定義紋理映

5、射、安裝顯示列表、定義霧等基本操作的初始化狀態(tài)、設(shè)置三維視景體、定義視口??傊?,是為下一步的0penGL圖形顯示作準備,初始化0penGL的狀態(tài)變量,使顯示三維0penGL圖形更方便,節(jié)省顯示圖形的時間。2.3繪制和顯示圖形按照應(yīng)用的具體要求,繪制和顯示三維圖形包括建立三維模型、設(shè)置物體在立體空間的運動軌跡、變更0penGL的狀態(tài)變量、協(xié)調(diào)合理地結(jié)合運用0penGL各基本操作、實現(xiàn)完美的三維圖形顯示。例1.1用一個簡單的例子(標準c編寫)來說明0penGL的程序結(jié)構(gòu)。例1.1OpenGL例程姍ple.e#include<衍n

6、daw.h>#include#indude}}indude#irlclllde<吼dio.h>voidⅡlyi撕t(void);void(:AIIBACK硼yReshape(GL8izeiw,Glsizeih);voidcAIIBAcKdisplay(void);/*Ini6alize枷出IsingforRGBAn10de,incl礎(chǔ)ngalpllablendiTIg,him,鋤dlinewi拙.*/砌dnlyiIIit(void){daearColor(O.O,O.

7、0,O.O,0.O);//將窗口清為黑色)/*disp:Iay()幽n幅蚰octahedlDnwitllalarge8lphavalue,1.O.*/void(:AIIBACKdi8play(void){出Qear(GLCOLOR_BImR—Brr);//將當前顏色緩存清為窗口的顏色西Colo—f(O.2,0.6,1.0,1.0);//設(shè)置顏色蝴ef(60.O.1.0,1.O,1.0);//設(shè)置坐標a政ⅣiIeCube(1.0);//繪制立方體棚ush();//強制繪圖完成1收稿日期:2001一02—28作者簡介:胡偉(19

8、76一),男,碩士研究生,主要研究方向:CAD、圖形學(xué)應(yīng)用;王弘(1948一).男,副教授,主要研究方向:cJMs系統(tǒng)規(guī)劃及應(yīng)用研究.萬方數(shù)據(jù)88計算機應(yīng)用2001年———————————————————————————~——————————————————————————————————

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。