圖形顯示軟件詳解_第1頁
圖形顯示軟件詳解_第2頁
圖形顯示軟件詳解_第3頁
圖形顯示軟件詳解_第4頁
圖形顯示軟件詳解_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

圖形顯示軟件詳解演示文稿第一頁,共四十七頁。(優(yōu)選)圖形顯示軟件第二頁,共四十七頁。3圖形顯示軟件

——概述圖形軟件的地位第三頁,共四十七頁。4圖形顯示軟件

——概述圖形軟件的地位計算機圖形系統(tǒng)是計算機硬件(包括中央處理機、圖形輸入輸出設(shè)備),以及軟件(包括系統(tǒng)軟件和圖形軟件)的集合。圖形軟件是圖形系統(tǒng)的一個重要環(huán)節(jié),在很大程度上決定著整個系統(tǒng)的功能速度和適應(yīng)能力。第四頁,共四十七頁。5圖形顯示軟件

——概述圖形軟件的地位計算機圖形系統(tǒng)是由計算機硬件、計算機系統(tǒng)軟件、圖形軟件和圖形設(shè)備組成的集合。硬件系統(tǒng)操作系統(tǒng)基礎(chǔ)軟件圖形軟件系統(tǒng)第五頁,共四十七頁。6圖形顯示軟件

——概述圖形軟件的作用與分類圖形軟件的作用或任務(wù)主要體現(xiàn)在三個方面:1、驅(qū)動程序:對圖形輸入輸出設(shè)備進行驅(qū)動和控制,完成基本的圖形輸入輸出功能。這部分程序通常稱作設(shè)備驅(qū)動程序,通常用匯編語言編寫,由制造廠商提供,大多固化在圖形設(shè)備上。例如打印機控制程序、微機顯示卡的BIOS和驅(qū)動程序。第六頁,共四十七頁。7圖形顯示軟件

——概述圖形軟件的作用與分類2、通用軟件包依據(jù)不同設(shè)備的性能和特點,努力達(dá)到最佳的圖形輸入輸出效果(高速、逼真),一般通過建立通用的圖形編程軟件包來實現(xiàn)。有時通過擴充現(xiàn)有高級語言的圖形語句也可以達(dá)到同樣的目的,但可移植性較差,因而很少采用。第七頁,共四十七頁。8圖形顯示軟件

——概述圖形軟件的作用與分類2、通用軟件包通用圖形軟件包起著承上啟下的作用。它利用設(shè)備驅(qū)動程序加以整合、提高和概括,提供包括圖形輸出、輸入、屬性、變換、觀察(裁剪)以及通用控制等各類子程序,涵蓋建立和管理圖形所需的各種功能,為應(yīng)用軟件包的開發(fā)提供有力的支持。第八頁,共四十七頁。9圖形顯示軟件

——概述圖形軟件的作用與分類3、應(yīng)用軟件包通過人機交互方式,在操作者的控制下,完成所需的圖形應(yīng)用程序。它所需要的是供非專業(yè)人員使用的成套的圖形應(yīng)用軟件包,如CAD軟件包、醫(yī)學(xué)圖像診斷軟件包等。良好的人機界面和系統(tǒng)綜合性能是圖形應(yīng)用軟件首要考慮的因素。第九頁,共四十七頁。10圖形顯示軟件

——概述常用術(shù)語圖元圖元又稱輸出圖元(OutputPrimitive),是組成圖形的基本成分的總稱。包括字符串和點、直線段、圓、曲線、填充區(qū)域等幾何成分。生成輸出圖元的子程序是構(gòu)造圖形的基本工具。第十頁,共四十七頁。11圖形顯示軟件

——概述常用術(shù)語屬性屬性(Arrtibute)是指輸出圖元的特性,它描述了一個特定圖元是怎么被顯示的。常用屬性包括亮度、色彩、線型、文本類型和區(qū)域填充模式等。通用圖形軟件包里的子程序可用來為單個圖元或成組的圖元設(shè)置屬性。第十一頁,共四十七頁。12圖形顯示軟件

——概述常用術(shù)語結(jié)構(gòu)(圖段)、對象多個具有一定邏輯關(guān)系的圖元構(gòu)成結(jié)構(gòu)(Structure)或圖段(Segment)。一個相對獨立的圖形單元成為一個對象(Object)??蓪Y(jié)構(gòu)等執(zhí)行有關(guān)的操作,如建立、修改和變換等。第十二頁,共四十七頁。13圖形顯示軟件

——概述常用術(shù)語坐標(biāo)系坐標(biāo)系即設(shè)計和描述圖形時所采用的參照系,用來說明圖形對象的相對位置、大小和方向。在圖形設(shè)計中,最常采用的是笛卡爾坐標(biāo)系,但需要針對不同的場合使用不同的尺度和量綱。第十三頁,共四十七頁。14圖形顯示軟件

——概述常用術(shù)語坐標(biāo)系構(gòu)造單個物體時,采用相應(yīng)的建模坐標(biāo)系或局部坐標(biāo)系;單個形狀一旦被指定,則可采用一參考坐標(biāo)系,稱為世界坐標(biāo)系,將該物體放入場景的適當(dāng)位置;最后,將該場景的世界坐標(biāo)描述變換到與輸出設(shè)備對應(yīng)的設(shè)備坐標(biāo)系來輸出或顯示。第十四頁,共四十七頁。15圖形顯示軟件

——概述常用術(shù)語坐標(biāo)系設(shè)備坐標(biāo)系分兩種:規(guī)范化設(shè)備坐標(biāo)系:獨立于任何特定的設(shè)備,坐標(biāo)取值范圍固定為0~1;特定設(shè)備坐標(biāo)系:必須與輸出設(shè)備的尺寸和分辨率等相適應(yīng)。對視頻監(jiān)視器而言,屏幕坐標(biāo)系滿足:第十五頁,共四十七頁。16圖形顯示軟件

——概述常用術(shù)語幾何變換(GeometicTransformation)是指改變場景中一個圖形對象的大小、位置或方向。建模變換(ModelingTransformation)是利用按建模坐標(biāo)給出的對象描述來構(gòu)成場景。觀察變換(Viewing

Transformation)是用來制定一種觀察和視圖在輸出顯示區(qū)域出現(xiàn)的范圍。第十六頁,共四十七頁。17圖形顯示軟件

——概述圖形軟件的開發(fā)方法目的一個良好的圖形應(yīng)用軟件,應(yīng)該具備所需的圖形功能、友好的人機界面和良好的程序結(jié)構(gòu)。在開發(fā)階段便于設(shè)計和調(diào)試,在使用時易學(xué)易用,便于維護和移植。第十七頁,共四十七頁。18圖形顯示軟件

——概述圖形軟件的開發(fā)方法1、子程序包以現(xiàn)有的高級語言為基礎(chǔ),擴充處理圖形的子程序包目前已有GKS、PHIGS、GL等多種圖形標(biāo)準(zhǔn)化程序包可供使用,開發(fā)者只需按規(guī)則調(diào)用所需的子程序,便可完成圖形的顯示、繪制和各種圖形設(shè)備的控制以及人機交互等這種方式在實際中使用得較多,所開發(fā)的軟件便于移植和推廣,但執(zhí)行速度較慢第十八頁,共四十七頁。19圖形顯示軟件

——概述圖形軟件的開發(fā)方法,主要采用以下三種方式:2、高級語言選定一種高級語言,在處理圖形的語句和數(shù)據(jù)類型等方面進行擴充。目前普遍使用的C、VB、VC等高級語言已經(jīng)在圖形生成及控制方面進行了擴充,以具備較強的圖形處理功能。適用于中、小型應(yīng)用軟件的開發(fā),所開發(fā)的軟件比較簡練、緊湊、執(zhí)行速度較快,缺點是可移植性較差。第十九頁,共四十七頁。20圖形顯示軟件

——概述圖形軟件的開發(fā)方法3、專用的高級圖形語言針對特定的設(shè)備配置,設(shè)計專用的高級圖形語言,可以達(dá)到最佳的效果。與簡單的命令語言相比,它的功能更強。與子程序包相比,它的執(zhí)行速度更快,效率更高。這種方式的缺點是系統(tǒng)開發(fā)量大,難以移植,主要用于專用圖形系統(tǒng)的開發(fā)。第二十頁,共四十七頁。21圖形顯示軟件

——概述直線的生成算法在數(shù)學(xué)上,理想的直線是一條由無窮多個無限小的連續(xù)的點組成。第二十一頁,共四十七頁。22圖形顯示軟件

——概述直線的生成算法但在光柵顯示平面上,我們只能用二維光柵格網(wǎng)上盡可能靠近這條直線的像素點的集合來表示它每個像素具有一定的尺寸,是顯示平面上可被訪問的最小單位,它的坐標(biāo)x和y只能是整數(shù),也就是說相鄰像素的坐標(biāo)值是階躍的而不是連續(xù)的

第二十二頁,共四十七頁。23圖形顯示軟件

——概述直線的生成算法直線的掃描轉(zhuǎn)換,就是要找出顯示平面上最佳逼近理想直線的那些像素的坐標(biāo)值,并將這些像素置成所要求的顏色。第二十三頁,共四十七頁。24圖形顯示軟件

——概述直線的生成算法由于一幅圖中可能包含成千上萬條直線,所以要求繪制算法應(yīng)該:1、最接近數(shù)學(xué)上的直線2、沿著線段分布的像素應(yīng)均勻3、畫線速度盡可能的快

第二十四頁,共四十七頁。25圖形顯示軟件

——概述像素不均勻的例子如右圖所示,對同樣長的線段,如果進行圖中的掃描轉(zhuǎn)換,就會因為斜率的不同,產(chǎn)生的像素個數(shù)不相等,這樣將導(dǎo)致像素亮度分布不均勻。第二十五頁,共四十七頁。26圖形顯示軟件

——概述直線的生成算法——逐點比較法逐點比較法就是在繪圖的過程中,繪圖筆每走一步就與規(guī)定圖形進行偏差比較,然后決定下一步的走向。如此重復(fù),用步步逼近理想線條的方法畫出規(guī)定的圖形。第二十六頁,共四十七頁。27圖形顯示軟件

——概述逐點比較法的執(zhí)行過程開始偏差判別畫筆走步偏差計算終點判斷(N)(Y)結(jié)束第二十七頁,共四十七頁。28圖形顯示軟件

——概述直線的生成算法——逐點比較法偏差判別:判斷畫筆的當(dāng)前位置與規(guī)定圖形位置之間的偏差,以確定畫筆下一步的走步方向畫筆走步:畫筆在X或Y向走一步終點判斷:判斷畫筆的當(dāng)前位置是否是規(guī)定圖形的終點偏差計算:計算畫筆在當(dāng)前位置上與規(guī)定圖形之間的偏差第二十八頁,共四十七頁。29圖形顯示軟件

——概述直線的生成算法——逐點比較法在用逐點法生成直線的過程中,要對處于不同位置的直線和畫筆,規(guī)定一個合理的走筆方向,并討論偏差的計算方法。第二十九頁,共四十七頁。30圖形顯示軟件

——概述直線的生成算法——逐點比較法1)走向規(guī)定:把直線的起點設(shè)置在坐標(biāo)系的原點,根據(jù)畫筆當(dāng)前位置,規(guī)定它的下一步走向如右圖第三十頁,共四十七頁。31圖形顯示軟件

——概述直線的生成算法——逐點比較法2)偏差計算規(guī)則:以所畫直線的斜率作為計算偏差的原始參數(shù)偏差值:=tg-tg(P:筆當(dāng)前位置)第三十一頁,共四十七頁。32圖形顯示軟件

——概述直線的生成算法——逐點比較法

3)第一象限的偏差計算=tg-tg=yp/xp-ya/xa=(xayp-xpya)/xpxa0筆當(dāng)前位置在直線下方,應(yīng)該向+Y方向走一步0筆當(dāng)前位置在直線上方,應(yīng)該向+X方向走一步因為xpxa0,故判斷的正負(fù)只需判斷xayp-xpya因此偏差:F=xayp-xpya第三十二頁,共四十七頁。33圖形顯示軟件

——概述直線的生成算法——逐點比較法4)用遞推法簡化偏差計算設(shè)筆的當(dāng)前位置為P1,若F1=y1?xa–ya?x1<0(*)應(yīng)走+Y一步,假設(shè)到達(dá)P2,則x2=x1y2=y1+1則在P2處的偏差應(yīng)為F2=y2?xa–ya?x2=y1?xa–ya?x1+xa=F1+xa第三十三頁,共四十七頁。34圖形顯示軟件

——概述直線的生成算法——逐點比較法4)用遞推法簡化偏差計算否則應(yīng)走+X一步,則下一個點為x2=x1+1

y2=y1

則在P2處的偏差應(yīng)為F2=y2?xa–ya?x2=y1?xa–ya?x1-ya=F1-ya第三十四頁,共四十七頁。35圖形顯示軟件

——概述直線的生成算法——逐點比較法4)用遞推法簡化偏差計算根據(jù)以上的推導(dǎo),只要知道F1,就可以連續(xù)推得F2、F3,并根據(jù)它們的符號確定畫筆下一步的走步方向初始條件我們設(shè)畫筆在直線段的起點,此時F1=0于是可歸納得:Fi≥0走+X一步,新偏差Fi+1=Fi–yaFi<0走+Y一步,新偏差Fi+1=Fi+xa第三十五頁,共四十七頁。36圖形顯示軟件

——概述直線的生成算法——逐點比較法4)用遞推法簡化偏差計算F<0,走+Y一步F=F+xaF≥0,走+X一步F=F-ya第三十六頁,共四十七頁。37圖形顯示軟件

——概述直線的生成算法——逐點比較法5)其他象限的偏差計算公式就不再一一推導(dǎo),過程是類似的,在此僅給出結(jié)果:

象限F≥0F<0走向偏差計算走向偏差計算1+XF=F-|ya|+YF=F+|xa|3-X-Y2+YF=F-|xa|-XF=F+|ya|4-Y+X第三十七頁,共四十七頁。38圖形顯示軟件

——概述直線的生成算法——逐點比較法6)終點判斷設(shè)置一個計數(shù)器,記錄下畫筆應(yīng)走的總步數(shù):N=X/S+Y/S

其中:X:直線段在X向的增量(X=|xa|)Y:直線段在Y向的增量(Y=|ya|)S:繪圖機步長故終點判斷為N=(|xa|+|ya|)/S;任何方向走一步后,N=N-1;直至N=0第三十八頁,共四十七頁。39圖形顯示軟件

——概述直線的生成算法——逐點比較法根據(jù)以上分析,可以總結(jié)為:1、輸入直線段的始點(x0,y0)和終點(x1,y1),計算xa=x1-x0和ya=y1-y02、選定第一點為(x0,y0)并為Fk賦初值,即令x=x0,ya=y0,F(xiàn)k=03、顯示當(dāng)前光點(x,y)4、根據(jù)Fk是否小于0,分別按遞推公式計算Fk+15、根據(jù)Fk+1的符號和當(dāng)前光點所處的象限,選定下一光點的走向和坐標(biāo)(x,y)6、重復(fù)上述第3-5步,總的迭代次數(shù)為N=|x1-x0|+|y1-y0|第三十九頁,共四十七頁。40圖形顯示軟件

——概述直線的生成算法——逐點比較法畫出直線段(0,0)~(5,3)第四十頁,共四十七頁。41圖形顯示軟件

——概述直線的生成算法——數(shù)值微分法算法描述數(shù)值微分法即DDA法(DigitalDifferentialAnalyzer),是一種基于直線的微分方程來生成直線的方法。它的算法實質(zhì)是用數(shù)值方法解微分方程,通過同時對x和y各增加一個小增量,計算下一步的x、y值簡單的DDA法在直線的最大增量方向每次變化1,另一個方向則相應(yīng)地每次變化一個小于1的值,逐個計算出最接近于理想直線的光點的坐標(biāo)。第四十一頁,共四十七頁。42圖形顯示軟件

——概述直線的生成算法——數(shù)值微分法算法描述設(shè)(x1,y1)和(x2,y2)分別為所求直線的起點和終點坐標(biāo),由直線的微分方程得:第四十二頁,共四十七頁。43圖形顯示軟件

——概述直線的生成算法——數(shù)值微分法算法描述可通過計算由x方向的增量△x引起y的改變來生成直線:xi+1=xi+△x(10-1)yi+1=yi+△y=yi+△x·m(10-2)第四十三頁,共四十七頁。44圖形顯示軟件

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論