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

正文內(nèi)容

第4章二維填充圖元的生成-資料下載頁(yè)

2024-09-28 16:07本頁(yè)面

【導(dǎo)讀】掌握如何繪制填充圖元。學(xué)會(huì)使用OpenGL的繪制函數(shù)。掃描轉(zhuǎn)換扇形區(qū)域。字符的表示與輸出。確定那些像素位于填充圖元的內(nèi)部。矩形是簡(jiǎn)單的多邊形,那么為什么要單獨(dú)處理矩形?比一般多邊形可簡(jiǎn)化計(jì)算。應(yīng)用非常多,如窗口系統(tǒng)。共享邊界如何處理?凸多邊形:內(nèi)角小于180度。凹多邊形:存在內(nèi)角大于180度。判斷繪圖窗口內(nèi)的像素是否位于多邊形內(nèi),若是,則。從待判別點(diǎn)v發(fā)出射線(xiàn)。測(cè)試點(diǎn)是否在多邊形內(nèi)的算法速度太慢,效率低。逐點(diǎn)判斷法孤立考慮各個(gè)像素與多邊形的內(nèi)外關(guān)系。利用相鄰像素之間的連貫性,提高算法效率。平行于坐標(biāo)軸的直線(xiàn)。一般取平行于X軸。當(dāng)前掃描線(xiàn)與各邊的交點(diǎn)順序與下一條掃描線(xiàn)與各邊的交。同一區(qū)間上的像素取同一顏色屬性。一條掃描線(xiàn)與多邊形的邊有偶數(shù)個(gè)交點(diǎn),每2個(gè)點(diǎn)形成一

  

【正文】 ), 激活頂點(diǎn)數(shù)組特性 ? 調(diào)用 glVertexPointer指定頂點(diǎn)坐標(biāo)的位置和數(shù)據(jù)格式 ? 使用與數(shù)組相關(guān)的函數(shù)繪制圖形 OpenGL相關(guān)函數(shù) 68 例: glClear (GL_COLOR_BUFFER_BIT)。 glColor3f (, , )。 vertex2 pt[]={{20,100},{50,50},{110,50},{140,100},{110,150},{50,150}}。 glEnableClientState(GL_VERTEX_ARRAY)。 glVertexPointer(2,GL_INT,0,pt)。 GLubyte vertIndex[]={0,1,2,3,4,5}。 glDrawElements(GL_TRIANGLES,24,GL_UNSIGNED_BYTE, vertIndex)。 glFlush ( )。 OpenGL相關(guān)函數(shù) 69 OpenGL相關(guān)函數(shù) ? 寫(xiě)像素模式 ? 16種,默認(rèn)方式為 GL_COPY ? 模式改變時(shí),需要調(diào)用 glEnable( GL_COLOR_LOGIC_OP) ? 設(shè)置模式: glLogicOp( GL_XOR) ? 例:異或模式 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 01 1 1 1 1 1 1 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 01 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 01 1 1 1 1 1 1 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0 X o rX o r背景 正方形 70 OpenGL相關(guān)函數(shù) ? 填充圖案函數(shù) ? 啟用函數(shù): glEnable( GL_POLYGON_STIPPLE) ? 關(guān)閉函數(shù): glDisable( GL_POLYGON_STIPPLE) ? 設(shè)置掩模( mask): glPolygonStipple( fillPattern) 注意: filePattern類(lèi)型為 GLubyte,大小為 32 32 GLubyte fillPattern[]= {0x96,0x96,0x96,0x96, 0x84,0x84,0x84,0x84, 0x48,0x48,0x48,0x48, 0x20,0x20,0x20,0x20, 0x10,0x10,0x10,0x10, 0x10,0x10,0x10,0x10, 0x18,0x18,0x18,0x18, 0x64,0x64,0x64,0x64, 。 (重復(fù) 3次 ) } 71 OpenGL相關(guān)函數(shù) ? OpenGL位圖函數(shù) ? void glRasterPos{234}{SIFD}[V](TYPE x, TYPE y, TYPE z, TYPE w)。 ? 設(shè)置當(dāng)前所畫(huà)位圖或圖像的原點(diǎn) ? glBitmap(width, height, x0,y0,xOffset,yOffset,bitShape) ? 設(shè)定當(dāng)前光柵位置 ? 該函數(shù)顯示二值位圖。 bitShape中的元素值為 0或 1,當(dāng)為 1時(shí),用設(shè)定的顏色繪制對(duì)應(yīng)的像素,否則對(duì)應(yīng)像素不受影響 ? 位圖的存儲(chǔ)模式:字節(jié) ? glPixelStorei ( GL_UNPACK_ALIGNMENT, 1 ) 。 72 OpenGL相關(guān)函數(shù) 程序 void display() { // 最好放在初始化函數(shù)中 glPixelStorei (GL_UNPACK_ALIGNMENT, 1)。 glColor3f (, , )。 glRasterPos2i (100, 200)。 glBitmap (8, 12, , , , , rasters)。 glColor3f (, , )。 glRasterPos2i (120, 220)。 glBitmap (8, 12, , , , , rasters)。 glColor3f (, , )。 glRasterPos2i (150, 200)。 glBitmap (8, 12, , , , , rasters)。 glFlush ( )。 } rasters 73 OpenGL相關(guān)函數(shù) ? 繪制字符 ? OpenGL基本庫(kù):位圖方法,需要自己創(chuàng)建字庫(kù) ? GLUT工具包:位圖和輪廓字體 ? 位圖字符函數(shù): glutBitmapCharacter(font, character) ? font:指定字型,常量(如 GLUT_BITMAP_8_BY_13) ? Character:字符的 ASCII碼值 ? 輪廓字符函數(shù): glutStrokeCharacter(font, character) ? font:指定字型,常量(如 GLUT_STROKE_ROMAN) ? Character:字符的 ASCII碼值 ? 位圖和輪廓字符比較 ? 前者速度快,后者放大縮小不變形 74 OpenGL相關(guān)函數(shù) 程序 void display() { glColor3f (, , )。 glRasterPos2i (50, 50)。 glutBitmapCharacter (GLUT_BITMAP_9_BY_15,66)。 glRasterPos2i (80, 50)。 glutBitmapCharacter (GLUT_BITMAP_TIMES_ROMAN_10,66)。 glColor3f (, , )。 glPushMatrix()。 glTranslatef(50,100,0)。glScalef(,1)。 glutStrokeCharacter(GLUT_STROKE_ROMAN,66)。 glPopMatrix()。 glTranslatef(100,100,0)。 glScalef(,1)。 glutStrokeCharacter(GLUT_STROKE_ROMAN,66)。 glutSwapBuffers()。 } 75 小結(jié) ? 多邊形的掃描轉(zhuǎn)換 ? 點(diǎn)是否在區(qū)域內(nèi)的判斷方法(射線(xiàn)法) ? 掃描線(xiàn)算法(思想、步驟和算法實(shí)現(xiàn)) ? 多邊形的區(qū)域填充 ? 種子填充(連通性) ? 扇形區(qū)域的掃描轉(zhuǎn)換 ? 字符的繪制方法 ? OpenGL函數(shù) 76 作業(yè) 1 、多邊形掃描轉(zhuǎn)換的掃描線(xiàn)算法利用了掃描線(xiàn)的連貫性和邊的連貫性,在數(shù)據(jù)結(jié)構(gòu)和算法中各體現(xiàn)在何處? 一個(gè)多邊形的頂點(diǎn)坐標(biāo)如下圖所示。 ( a)寫(xiě)出邊的分類(lèi)表 ( b)說(shuō)明掃描線(xiàn) y= 6, 7, 8, 9和 10時(shí),哪些邊是活性邊。并給出活性邊表。 77 作業(yè) 內(nèi)點(diǎn)表示的區(qū)域和邊界表示的區(qū)域在填充時(shí)有什么不同? 根據(jù)三角形的特殊性,如何簡(jiǎn)化掃描轉(zhuǎn)換三角形的掃描線(xiàn)算法。 78 上機(jī)題 1:補(bǔ)充 ?添加填充圖元的功能 ? 填充多邊形 ? 多邊形交互輸入、顏色定義和填充
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1