freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于mfc的opengl繪圖(編輯修改稿)

2025-09-06 14:41 本頁面
 

【文章內(nèi)容簡介】 60。if(thisSetWindowPixelFormat(hDC)==FALSE){return0。}if(thisCreateViewGLContext(hDC)==FALSE){return0。}return0。}    添加WM_DESTROY的消息處理函數(shù)Ondestroy( ),使之如下所示: voidCOpenGLDemoView::OnDestroy(){CView::OnDestroy()。//TODO:Addyourmessagehandlercodehereif(wglGetCurrentContext()!=NULL){wglMakeCurrent(NULL,NULL)。}if(thism_hGLContext!=NULL){wglDeleteContext(thism_hGLContext)。thism_hGLContext=NULL。}}    最后,編輯COpenGLDemoView的構(gòu)造函數(shù),使之如下所示: COpenGLDemoView::COpenGLDemoView(){//TODO:addconstructioncodeherethism_GLPixelIndex=0。thism_hGLContext=NULL。} 至此,我們已經(jīng)構(gòu)造好了框架,使程序可以利用OpenGL進行畫圖了。你可能已經(jīng)注意到了,我們在程序開頭產(chǎn)生了一個RC,自始自終都使用它。這與大多數(shù)GDI程序不同。在GDI程序中,DC在需要時才產(chǎn)生,并且是畫完立刻釋放掉。實際上,RC也可以這樣做;但要記住,產(chǎn)生一個RC需要很多處理器時 間。因此,要想獲得高性能流暢的圖像和圖形,最好只產(chǎn)生RC一次,并始終用它,直到程序結(jié)束。    CreateViewGLContex產(chǎn)生RC并使之成為當(dāng)前RC。WglCreateContext返回一個RC的句柄。在你調(diào)用 CreateViewGLContex之前,你必須用SetWindowPixelFormat(hDC)將與設(shè)備相關(guān)的像素格式設(shè)置好。 wglMakeCurrent將RC設(shè)置成當(dāng)前RC。傳入此函數(shù)的DC不一定就是你產(chǎn)生RC的那個DC,但二者的設(shè)備句柄(Device Context)和像素格式必須一致。假如你在調(diào)用wglMakeforCurrent之前已經(jīng)有另外一個RC存在,wglMakeforCurrent 就會把舊的RC沖掉,并將新RC設(shè)置為當(dāng)前RC。另外你可以用wglMakeCurrent(NULL, NULL)來消除當(dāng)前RC。    我們要在OnDestroy中把繪制環(huán)境刪除掉。但在刪除RC之前,必須確定它不是當(dāng)前句柄。我們是通過wglGetCurrentContext來了 解是否存在一個當(dāng)前繪制環(huán)境的。假如存在,那么用wglMakeCurrent(NULL, NULL)來把它去掉。然后就可以通過wglDeleteContext來刪除RC了。這時允許視類刪除DC才是安全的。注:一般來說,使用的都是單線 程的程序,產(chǎn)生的RC就是線程當(dāng)前的RC,不需要關(guān)注上述這一點。但如果使用的是多線程的程序,那我們就特別需要注意這一點了,否則會出現(xiàn)意想不到的后 果。   三、畫圖實例   下面給出一個簡單的二維圖形的例子(這個例子都是以上述框架為基礎(chǔ)的)。   用Classwizard為COpenGLDemoView添加WMSIZE的消息處理函數(shù)OnSize,代碼如下:voidCOpenGLDemoView::OnSize(UINTnType,intcx,intcy){CView::OnSize(nType,cx,cy)。//TODO:AddyourmessagehandlercodehereGLsizeiwidth,height。GLdoubleaspect。width=cx。height=cy。if(cy==0){aspect=(GLdouble)width。}else{aspect=(GLdouble)width/(GLdouble)height。}glViewport(0,0,width,height)。glMatrixMode(GL_PR
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1