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

正文內(nèi)容

第3章二維線畫圖元的生成-資料下載頁

2024-09-28 16:16本頁面

【導(dǎo)讀】如何繪制簡單線畫圖元。使用OpenGL的相關(guān)函數(shù)。參數(shù)表示形式由圖形軟件包的使用者指定。點陣表示形式是光柵顯示系統(tǒng)刷新時所需的表示形式。最基本的繪圖函數(shù)。求與直線段充分接近的像素集,并以此像素集替代原連。直線段的寬度為1. 根據(jù)直線的幾何方程確定線段路徑上的像素位置。M表示斜率,b表示y軸截距。以下代碼是否正確。消除DDA算法中的浮點運(yùn)算。直線的正負(fù)劃分性。直線下方的點:F(x,y)<0. 由d的正和負(fù)可判定下一個像素。yi,r表示取整后的坐標(biāo);增量d的遞推公式。優(yōu)化:增量都是整數(shù),只有初始值包含小數(shù),可以用2d代替

  

【正文】 glFlush()。 } OpenGL相關(guān) 函數(shù) 51 int main(int argc, char** argv) { glutInit(amp。argc, argv)。 glutInitDisplayMode (GLUT_RGB)。 glutInitWindowSize (250, 250)。 glutInitWindowPosition (300, 300)。 glutCreateWindow (Demo)。 init()。 glutDisplayFunc(display)。 glutKeyboardFunc(keyboard)。 glutReshapeFunc(Reshape)。 glutMainLoop()。 return 0。 } OpenGL相關(guān) 函數(shù) 52 ? 圖元繪制 ? 指定圖元的類型( glBegin(type)指定) ? 定義頂點(坐標(biāo) glVertex,顏色 glColor等) ? 結(jié)束( glEnd()) ? 編碼方法 glBegin(type)。 glVertex*()。 //指定頂點坐標(biāo) 1 glVertex*()。 //指定頂點坐標(biāo) 2 ┆ glEnd(); OpenGL相關(guān) 函數(shù) 53 ? type類型 OpenGL相關(guān) 函數(shù) 類型 說明 GL_POINTS 單個頂點集 GL_LINES 多組雙頂點線段 GL_POLYGON 單個簡單填充凸多邊形 GL_TRIANGLES 多組獨立填充三角形 GL_QUADS 多組獨立填充四邊形 GL_LINE_STRIP 不閉合折線 GL_LINE_LOOP 閉合折線 GL_TRIANGLE_STRIP 線型連續(xù)填充三角形串 GL_TRIANGLE_FAN 扇形連續(xù)填充三角形串 GL_QUAD_STRIP 連續(xù)填充四邊形串 54 ? 畫點 ? glBegin中的參數(shù)為 GL_POINTS ? glVertex的后綴組成 n (i|s|f|d) {v} ? n指定坐標(biāo)位數(shù),一般取 2或 3 ? (i|s|f|d)數(shù)值類型 i(整數(shù) ); s(短整數(shù) ); f(浮點數(shù) ); d(雙精度浮點數(shù) ) ? v:坐標(biāo)數(shù)據(jù)是向量形式 ? 例 : (1)glBegin(GL_POINTS) (2)int point1[]={50,100}。 glVertex2i(50,100)。 int point2[]={750,150}。 glVertex2i(75,150)。 int point2[]={100,200}。 glVertex2i(100,200)。 glBegin(GL_POINTS) glEnd()。 glVertex2iv(point1)。 ┆ OpenGL相關(guān) 函數(shù) 55 ? 點的屬性 ? 顏色 函數(shù) (1) glColor(3|4)(b|d|f|i|s|ub|ui|us)(TYPE r,TYPE g,TYPE b ) (2) glColor(3|4)(b|d|f|i|s|ub|ui|us)v(TYPE *rgb ) 其中: u表示無符號 ? RGB色立方體 ? 顏色模式: RGB(RGBA)和顏色表模式 ? 大?。?glPointSize( GLfloat size) OpenGL相關(guān) 函數(shù) 56 ? 畫線 ? glBegin中的參數(shù)為: GL_LINES、 GL_LINE_STRIP、 GL_LINE_LOOP ? GL_LINES:一組直線段; GL_LINE_STRIP:折線 GL_LINE_LOOP:封閉折線 ? 例:頂點序列 p1,p2,p3,p4,p5 glBegin(GL_LINES) glVertex2iv(p1)。 glVertex2iv(p2)。 glVertex2iv(p3)。 glVertex2iv(p4)。 glVertex2iv(p5)。 glEnd()。 OpenGL相關(guān) 函數(shù) GL_LINES GL_LINE_STRIP GL_LINE_LOOP 57 ? 線的屬性 ? 顏色:由點的顏色決定 ? 寬度: glLineWidth( GLfloat width ) 只能用在 glBegin之前,不能用在 glBegin和 glEnd之間 ? 線型: void glLineStipple(GLint factor, GLushort pattern)。 使用前需要激活: glEnable(GL_LINE_STIPPLE)。 pattern: 16位掩碼 factor:每位重復(fù)次數(shù) OpenGL相關(guān) 函數(shù) 58 ? 程序 :(繪制回調(diào)函數(shù) ) GLfloat y。 // Storage for varying Y coordinate GLint factor = 1。 // Stippling factor GLushort pattern = 0x31df。//f38d。 // Stipple pattern glEnable(GL_LINE_STIPPLE)。 glLineWidth(2)。 for(y = 。 y 。 y += ) { // Reset the repeat factor and pattern glLineStipple(factor ,pattern)。 // Draw the line glBegin(GL_LINES)。 glVertex2f(, y)。 glVertex2f(, y)。 glEnd()。 factor++。 } OpenGL相關(guān) 函數(shù) 59 ? 掃描轉(zhuǎn)換的概念 ? 直線的掃描轉(zhuǎn)換算法 ? DDA算法 ? 中點算法 ? 圓弧的掃描轉(zhuǎn)換算法 ? 中點算法 ? 逼近算法 ? 圖元屬性表示 ? OpenGL基本繪制圖元函數(shù) 小結(jié) 60 作業(yè) ( 1)比較直線段掃描轉(zhuǎn)換三種算法中的運(yùn)算特點。 ( 2)根據(jù)拋物線 的正負(fù)性和對稱性,當(dāng) y∈ [24, 24]時,推導(dǎo)中點算法中的判別式。 0524),( 2 ???? yxyxf61 ? 簡單圖形編輯系統(tǒng) ? 功能 (1) 繪制:直線段、多邊形、圓等簡單二維圖形 (2) 處理:裁剪和變換 (3) 交互:參數(shù)由鼠標(biāo)或鍵盤輸入;選中并修改圖形 (4) 存貯:圖形數(shù)據(jù)可以保存到文件中,并能讀文件 ? 要求 (1)面向?qū)ο蟪绦蛟O(shè)計語言 (2)構(gòu)建簡單幾何對象類(點、線和多邊形等) (3)定義合適的文件格式 (4)交互方式要通用化 上機(jī)題一
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1