實驗-OpenGL幾何變換_第1頁
實驗-OpenGL幾何變換_第2頁
實驗-OpenGL幾何變換_第3頁
實驗-OpenGL幾何變換_第4頁
實驗-OpenGL幾何變換_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

歡。迎下載1c1c歡迎下載#indude<GL/glut.h>voicinit(wcid)CglCl^arCokr(l,Oj1.0,,.OC0.0);glMatrixModetGL_PROJECnO^^gluOrthoiD(-5.0;5.D,-5.Or5.0);//設(shè)置:顯示的范圉是4-5總巾5Q,¥:-5,0~5.。glMatrixModetGL_MODELVIEW);voicg啊SqumneCQ匚)”繪制中心在原點,邊注為2的正方形{SlBegin(GL_POLYGON):力頓E靛慧投甄t針方向glVertcx2f口1.叱-L。少〃左下點glYert^x2f(1Q匕二明山右下點glYertexZfC1.0FfLOf);〃右上點qlV白rtex2f(」時一硝;”左上點QlEnd();)voicmyDrawl(void){glClea-(GL_COLOR_BUFFER_B]T);上喟空glLoadldentityfJ;"將當(dāng)前矩陣設(shè)為單位矩陣glCoar3fCl.Oj.0,0?0,0);drawSquaref);〃在原點處繪制邊長為2紅色正方形皿丁百31玳寸(2.0,總必0.。);//向右移動2單位,向上移動m單位glScakf(1,0,1,54.0);“M和昉向保持不變,'方句放大為原來的匕5倍glCoor3fC0.0r1.0;O.D);出為巴定1^g0;"繪制邊長為端色正方形jLoa也能ntiWU"/將當(dāng)前矩底設(shè)為單位拒陳glTranslatef^.D^-3.0,0.0);。向左移動彈位?向下移動3單位qlSs山可口.5,,件1R);"2方向保持不變,昉由小為原來的口5倍,彷向觸為原來的L5倍glCoor3fCO.Oj.0,0;1.0);dnawSquaref);〃繪制邊米為工藍(lán)色正方形glFlush();

glClea-{GL_COLOR_BUFFER_BTT):,,焉空glLoadIdenzity(J:"相當(dāng)前矩院設(shè)為單位拒陳glCoor3f(L.Oj0.0f0.0);drawSqjaneQ;〃在原點處繪制邊長為2紅色正方極glP^hMatrix(?"把當(dāng)前矩眸壓火堆棧glTwisImtef⑵“麗移動Z單位,恥移動3單位glScaleF(1.0,1.54.0):和西方向保持根,向放大為原來的L5倍glCoor3f(0.0^1.0,0.0);drawSqjaneO'"繪制邊長為蜀色正方形glPopMatriO;"O棧彷頂弓領(lǐng)一個拓碑為當(dāng)前^^glT-an&latsf(-2.D,-3.0H0.0);“向左移動彈位,向下移動三單位glScaleF(0.5,1.5.1.D);“2方向保持不變,防而讖小為原蜘0.5倍,肪向做為原來的L5倍glCoorSf(0.0^0.0f1.0);d田胃Squ己用。"/僦]郵為瑞色I(xiàn)E方形glFlush();glutlnt(ftangCj^rgv);glutlntDisplayMode(GLIH^SINGLE|GUJT_FLGB)-glutlnitWimdowPosizionCoTD);glutlnitWindowSizeJ600hSOD);gILitCreateWindow-Semi日庠勘示歷i「):glutDisplayFunc(mwDrawl);生成圖形:

注意理解:myDrawl()和myDraw2()生成的圖形完全相同,為什么?(4)、綜合示例^include<GL,/gljt.Ii:>glClearCoIcr(1。1.0,1,0;0.0);:glMatrixMode(GL_PROJECnO^J);gluOi-tho2D(-5.Of525&5⑼;〃設(shè)置顯示的范圍是乂二-5?Y.%Y:-5.0-5.0glMatrixMode(GL_MODELVIEW);vcicdEkSqu日間vniG”繪制中心在原點,邊長為2的正方形glB即口(GL_POLYGON^;〃質(zhì)品疑需要按政用方向glVertejcZfC-L.0ff-1.0D;//ST^qlVertezZf若下點glVertesZf(1.0匕LQf)"『右上點glUeirteJcZf(-LOf-OQ;"左上點glM(LglClea^[-QL_COLOK_BUFFER_BIT);/,靖空glLoadldentiM);/米當(dāng)前矩陣設(shè)為單位矩陣glPii5hMatrix(j;gIT-ansiatjef(0.0f,2.Of,O-OT);glScaleff3.0j0.5j1.0);glCoor3f(1.0r0.0,Q.O);dnawSqjaneO:"上面紅色矩形dPopMatrixQglPii5hMatrix(j;gIT-ansiatjef(-3,0A0A0);glPii5hMatrix(j;glRjotatef[4i(),0<D.a,1.0);glCoar3f(O.Or1.0,0.03;drawSqjareO;〃中間左菱形glPopMatriscO;glT-an5.latef(3.0,0.0,0.0)■glPushMatrix(j;glKotatef[4i(]r0-0fD.0,1.0);glCooral(0.0,0.7,0.03:drawSquaneO:〃中間中菱形glPopMatri)cO:glTranslatef(3.0,0.0,0.0);glPuEhMatriK(j;glRotatef(45.0,0.0,0.0,1.0);glColorSf(O.0r0.4,0.0);drawSquareQ;〃中間旗形gIPopMatrigIPopMatrix();glT-an:ElateF(D.0;-3.0,0.0);glScaleft^ttJ.Sijl.O);glColor3f(0.0,0,0,1.0);drawSquareQ;〃槍典矩形gIFlush();cilutlnit{aargcj3「gv);glutlnitDisplayMode(GLLFT_S1NGLE|GLUT_FLGB);glutlnitWindowPosi:ion(0r0);glutlnitWindowSize(600F600);01utCreateWindow「幾何登換函數(shù)綜合示例");glutDisplayFunc(myDraw);glutMainLoop£J;生成圖形:5.實驗作業(yè):

繪制如下圖形:面;(1)寫一千繪制翱2的區(qū)徽drawDiamond(v&id;;vcicdrawDiamordCvod)〃繪制中心在原幽菱形^iBegin(GL-POL

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論