OpenGL編程輕松入門(mén)之像素操作

OpenGL編程輕松入門(mén)之像素操作

ID:41032787

大?。?3.00 KB

頁(yè)數(shù):5頁(yè)

時(shí)間:2019-08-14

OpenGL編程輕松入門(mén)之像素操作_第1頁(yè)
OpenGL編程輕松入門(mén)之像素操作_第2頁(yè)
OpenGL編程輕松入門(mén)之像素操作_第3頁(yè)
OpenGL編程輕松入門(mén)之像素操作_第4頁(yè)
OpenGL編程輕松入門(mén)之像素操作_第5頁(yè)
資源描述:

《OpenGL編程輕松入門(mén)之像素操作》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。

1、OpenGL編程輕松入門(mén)之像素操作2006-05-2308:35作者:黃燕出處:天極開(kāi)發(fā)責(zé)任編輯:方舟本節(jié)講解像素操作?! ±?4:本例在窗口繪制一個(gè)三角形,然后利用glCopyPixel函數(shù)拷貝了五次該圖形,并將這五個(gè)三角形放置在窗口的不同位置。#include#include/*設(shè)置背景色*/voidmyInit(void){ glClearColor(1.0,1.0,1.0,1.0);}/*繪制彩色三角形*/voidtriangle(void){ glBegin(GL_TRIANGLE

2、S); glColor3f(1.0,1.0,0.0); glVertex2f(10.0,10.0); glColor3f(0.0,0.3,1.0); glVertex2f(20.0,30.0); glColor3f(1.0,0.0,0.0); glVertex2f(30.0,10.0); glEnd();}voidmyDisplay(){ inti; glClear(GL_COLOR_BUFFER_BIT

3、GL_DEPTH_BUFFER_BIT); glPushMatrix(); glTranslatef(10.0,100.0,0.

4、0); triangle(); glPopMatrix(); glPushMatrix(); for(i=0;i<5;i++) {  glRasterPos2i(20+i*30,10+i*5);//為像素操作指定光柵位置  glCopyPixels(50,200,500,500,GL_COLOR);//在緩存中拷貝像素 } glPopMatrix(); glFlush();}voidmyReshape(intw,inth){ glViewport(0,0,(GLsizei)w,(GLsizei)h); glMatrixMode(GL

5、_PROJECTION); glLoadIdentity(); if(w<=h)  gluOrtho2D(0.0,150,0.0,150.0*(GLfloat)h/(GLfloat)w); else  gluOrtho2D(0.0,150*(GLfloat)w/(GLfloat)h,0.0,150.0); glMatrixMode(GL_MODELVIEW); glLoadIdentity();}intmain(intargc,char**argv){ glutInit(&argc,argv); glutInitDisplayMod

6、e(GLUT_SINGLE

7、GLUT_RGB

8、GLUT_DEPTH); glutInitWindowSize(500,400); glutInitWindowPosition(100,100); glutCreateWindow("copy"); myInit(); glutReshapeFunc(myReshape); glutDisplayFunc(myDisplay); glutMainLoop(); return0;}  ·glRasterPos在像素操作中指定光柵位置。同樣后面的數(shù)字表示坐標(biāo)維數(shù),2表示坐標(biāo)為x、y,3表示

9、、,y、z。數(shù)字后面的字母表示參數(shù)類(lèi)型。最后帶V表示參數(shù)為指針?!  oidglCopyPixels(GLintx,Glinty,GLsizeiwidth,GLsizeiheight,GLenumtype)函數(shù)將像素拷貝到緩存中。  x,y指定被拷貝像素的右下角坐標(biāo)?! idth,heigth指定被拷貝像素矩形區(qū)域的大小。  type指定拷貝數(shù)值的類(lèi)型。值為顏色、深度或膜板值。本例中為顏色?! ±?5:此例在窗口左下角寫(xiě)單詞FILE。#include#include/*字母F*/GLub

10、ytef_rasters[12]={0xc0,0xc0,0xc0,0xc0,0xc0,0xfc,0xfc,0xc0,0xc0,0xc0,0xff,0xff};/*字母I*/GLubytei_rasters[12]={0xff,0xff,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0xff,0xff};/*字母L*/GLubytel_rasters[12]={0xff,0xff,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0};/*字母E*/GLu

11、bytee_rasters[12]={0xff,0xff,0xc0,0xc0,0xc0,0xff,0xff,0xc0,0xc0,0xc0,0xff,0xff};voidmyInit(void){ glPixelStorei(GL_UN

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

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

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