計算機圖形學總結_第1頁
計算機圖形學總結_第2頁
計算機圖形學總結_第3頁
計算機圖形學總結_第4頁
計算機圖形學總結_第5頁
已閱讀5頁,還剩11頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、圖形學簡介

1.1、解釋計算機圖形學中圖形與圖像兩個概念的區別。

答:圖形是指由外部輪廓線條構成的矢量圖。即由計算機繪制的

直線、圓、矩形、曲線、圖表等;而圖像是由掃描儀、攝像機等輸入

設備捕捉實際的阿面產生的數字圖像,是由像素點陣構成的位圖。(白

度知道)

?從廣義上說,凡是能夠在人的視覺系統中形成視覺印象的客觀

對象都稱為圖形。它包括人年說觀察到的自然界的景物,用照相機等

設別所獲得的圖片,用繪圖工具繪制的工程圖,各種人工美術繪畫和

用數學方法描述的圖形等。

?圖形學中的圖形一般是指由點、線、面、體等幾何要素(geometric

attribute)和明暗、灰度(亮度)、色彩等視覺要素(visualattribute)

構成的,從現實世界中抽象出來的圖或形。圖形強調所表達對象的點、

線、面、結構等幾何要素。

?而圖像則只是指一個二維的像素集合,至于這個集合所構成的

圖案的意義、幾何元素等,計算機并不知曉。可以一條直線作比方來

說明。

1.2.解釋“計算機圖形學”研究的主要內容。

答:是一種使用數學算法將二維或三維圖形轉化為計算機顯示器

的柵格形式的科學。簡單地說,計算機圖形學的主要研究內容就是研

究如何在計算機中表示圖形、以及利用計算機進行圖形的計算、處理

和顯示的相關原理與算法。(百度百科)

?Modeling建模

構建三維模型的場景

?Rendering繪制(渲染)

渲染的三維模型,計算每個像素的顏色。顏色是有關

照明,環境,對象材料等。

?Animation動畫

1.3、能列舉計算機圖形學的一些應用實例。

答:CAD工業制造仿真、電影特效合成、3D動畫、3D游戲

2、GraphicDevicesinComputerSystem

2.1、了解圖形輸出設備中“陰極射線管(CRT)”的主要工作原理。

答:顯示屏、電子槍、和偏轉控制裝置三部分組成。當燈絲被加

熱時,電子槍陰極釋放出電子,電子經過聚焦系統和加速系統后形成

電子束,經過偏轉控制裝置時軌跡發生變化,打在顯示屏磷粉涂層上

發光。

?Storing:為每個象素設置一個電容維持一定的電壓,使象素持

續發光。

?Refresh:不斷重復轟擊像素,使其不斷重復發光;由于人眼的

視覺暫留效應,就會產生象素持續發光的印象。

2.2、解釋“隨機掃措顯示器”與“光柵掃描顯示器”的不同。

答:隨機掃描顯示器顯示圖形時,電子束的移動方式是隨機的,電

子束可以在任意方向上自由移動,按照顯示命令用畫線的方式繪出圖

形,因此也稱矢量顯示器。而光柵掃描顯示器顯示圖形時,電子束依

照固定的掃描線和規定的掃描順序進行掃描。電子束先從熒光屏左上

角開始,向右掃一條水平線,然后迅速地回掃到左邊偏下一點的位置,

再掃第二條水平線,照此固定的路徑及順序掃下去,直到最后一條水

平線,即完成了整個屏幕的掃描。隨機掃描顯不器依靠顯示文件對屏

幕圖形進行刷新;光柵掃描顯示器則依靠幀緩存實現對屏幕圖形的刷

新。

?隨機掃描顯示器(向量顯示器):挖制電路比較復雜,不適于

顯示非常復雜的圖像,已基本被淘汰。

?光柵掃描顯示器:似乎很笨,但控制簡單,可繪制任意復雜

的圖像,故遠遠優于vectordisplay;出現以后迅速成為主流,并大

大促進了圖形學的發展(因其能夠繪制任意復雜的圖像)。也有采用

隔行掃描的,即先掃描所有偶數行,再掃描所有奇數行。

2.3、理解有關光柵掃描顯示器的一些主要概念:光柵、像素、掃描

線、分辨率(resolusion)、

幀緩存(framebuffer)>刷新頻率(refreshrate)。

光柵:一個點或點的矩形陣列

像素:一個點或圖片元素的光柵

掃描線:一個像素行

分辨率:該點沒有可顯示的最大數目重疊的CRT被稱為該決議

幀緩存:圖片定義存儲在一個稱為幀緩沖區或刷新緩沖區的內存

刷新率:在其中一張照片是在屏幕上繪制頻率稱為刷新率

3、AlgorithmsforDrawing2DPrimitives

3.1解釋DDA算法的原理,并寫出DDA算法的主要流程

答:取整

voidlineDDA(intxs,intysyintxe,intye)

(

intk=abs(xe-xs);

if(abs(ye-ys)>k)thenk=abs(ye-ys);

floatxincre=(xe-xs)/k;

floatyincre=(ye-ys)/k;

floatx,y;

for(i=l;i<=k;i++){

setPixel(round(x),round(y));

x=x+xincre;

y=y+yincre;

)

}

3.2解釋Bresenham直線算法的基本原理

3.3解釋Bresenham畫圓算法的基本原理

3.4解釋中點圓算法(Midpointcirclealgorithm)的基本原理

4、Scan-lineConversionandAreaFilling

4.1解釋何為掃描轉換,解釋何為區域填充,兩者的區別是什么?

答:光柵圖形的一個基本問題是把多邊形的頂點表示轉換為點陣

表不,這種轉換稱為多邊形的掃描轉換。區域填充指先將區域的一點

賦予指定的顏色,然后將該顏色擴展到整個區域的過程。多邊形的掃

描轉換主要是通過確定穿越區域的掃描線的覆蓋區間來填充。區域填

充是從給定的位置開始涂描直到指定的邊界條件為止。

1.基本思想不同:多邊形的掃描轉換是指將多邊形的頂點表示轉

換成點陣表示。在掃描轉換過程中利用了多邊形各種形式的連貫性。

區域填充只改變區域的顏色,不改變區域兇表示方法。在填充過程中

利用了區域的連通性。

2.算法的要求不同:在區域填充中要求指定區域內的一點為種子

點,然后從這點開始對區域進行著色。對多邊形的掃描轉換沒有這個

要求。

3.對邊界的要求不同:在多邊形的掃描轉換中要求每一條掃描線

與多邊形邊界的交點個數是偶數。在區域填充中要求4連通區域的邊

界為封閉的8連通區域,而8連通區域的邊界為封閉的4連通區域。

4.2理解掃描線填充算法(Scan-linePolygonFillAlgorithm)的基本步驟

答:求出掃描線與多邊形邊的交點2)將交點按照x升序排列3)

將排好序的交點兩兩配對,然后繪制相應線段。

4.2.1數據結構的使用

答:邊的分類表(EdgeTable,ET);邊的活化鏈表(ActiveEdgeList,

AEL)

422奇點的處理方法

一是當掃描線與頂點相交時,交點的取舍。當與那個頂點關聯的

邊在掃描線同側時,交點自然算兩次,當與那個頂點關聯的邊在掃描

線兩側時,交點只能算一次。我們使用“下閉上開”的辦法。

二是多邊形邊界上的像素取舍,我們采用“左閉右開”的辦法。

4.3理解何為四連通區域和八連通區域

答:4-連通區域:從區域上的一點出發,通過訪問已知點的4-鄰

接點,在不越出區域的前提下,遍歷區域內的所有象素點。

8-連通區域:從區域上的一點出發,通過訪問已知點的8-鄰接點,

在不越出區域的前提下,遍歷區域內的所有象素點。

4.4解釋在光柵化顯示中,何為走樣?走樣的原因是什么?列舉出“走

樣”可能造成的顯示問題

定義:用離散量表示連續量引起的失真,就叫做走樣(Aliasing)。

原因:數學意義上的圖形是由無線多個連續的、面積為零的點

構成;但在光柵顯示器上,用有限多個離散的,具有一定面積的象素

來近似地表示他們。

走樣造成的顯示問題:一是光柵圖形產生的階梯形。一是圖形中

包含相對微小的物體時,這些物體在靜態圖形中容易被丟棄或忽略,

在動畫序列中時隱時現,產生閃爍。

4.5解釋克服“走樣”的兩類方法

以面積采樣代替點采樣(邊界使用過度色階)超采樣

(高分辨率計算,低分辨率顯示)

5、GraphicsPipeline(圖形流程)

5.1>畫出目前計算機中圖形顯示的主要流程(GraphicsPipeline),

并解釋各模塊的主要任務。

答:流程:變換(Transformation)>光柵化(Rasterization)>

片元處理(Fragmentoperations)、幀緩存(Framebuffer)

3Dmodel02Dgraph——transformation(vertexoperations)

2Dgraph02Dimage——rasterizationandfragmentoperations

PerAfertex

operations

Evaluatorsandprimitive

assembty

受授(TraWormarin)Fragm*operafionst

[麗斐操TextirrfdcbiDg

工幫F/caoibtioo

AJp5tsi

DtfHhtest

5o~BWodi>t

q覆口受投

5.2圖形流程中Transformation所要完成的任務是什么,它包含哪幾

個主要過程?

任務是將三維模型轉換為二位圖表

主要過程有:幾何變換、投影變換、裁減、窗口到視口的

變換

5.2.1、寫出平里春埒用n州甲掰放縮變換(:Sea怦您J常噴式

平移變換j°

nn1?A-?

522、能夠推出圖形繞某一坐標軸旋轉的矩陣表達式

Rotationrelativetothey-axisandx-axis

x-rcos^

y=rsintp

x'=rcos@-a)=rcos8cosa-rsin。sina

y'=rsin(^+a)=rcos^sina+rsineicosa

x'=xcos6-ysind

{y'=xsind+ycos。

z'=z

523、解釋幾何變換中為何需要采用齊次坐標系,能夠寫出上述變換

矩陣的齊次坐標表達形式

許多圖形應用涉及到幾何變換,主要包括平移、旋轉、縮

放。以矩陣表達式來計算這些變換時,平移是矩陣相加,旋轉

和縮放則是矩陣相乘,綜合起來可以表示為p'=m1*p+

m2(m1旋轉縮放矩陣,m2為平移矩陣,p為原向量,p,

為變換后的向量)。

引入齊次坐標的目的主要是合并矩陣運算中的乘法和加

法,表示為p'=M*p的形式。即它提供了用矩陣運算把二維、

三維甚至高維空間中的一個點集從一個坐標系變換到另一個

坐標系的有效方法。

平移:),,=010),+Ay

‘',2001Azz

Jz'1J00I1Jz1JAz1100011

縮放:

旋轉:

524、能夠寫出物體經過連續變換后的組合矩陣

525、理解全局變換與局部變換的區別,解釋OpenGL中所采用的變

換矩陣結合方式

?Globaltransformation

1.每一次變換均可以看成是相對于原始坐標系執行的

2.我們前面講的平移、放縮和旋轉矩陣實現的都是全局變換

?Localtransformation

1.每一次變換均可以看成是在上一次變換所形成的新的坐標系中

進行

2.可以通過顛倒矩陣相乘的順序來實現局部變換

每次的變換矩陣都乘在原矩陣的右側,而最后變換頂點時,頂點

也乘在總體變換矩陣的右側。這樣就造成J'先調用的變換實際上是后

執行的,因而如果是按照OpenGL的變換語句的順序來理解的話,其

效果應當是局部變換的效果。因此,如果按照變換語句的順序來理解

的話,OpenGL采用的是localtransformation

526、寫出OpenGL中有關幾何變換的相關函數

voidglTranslated(doublex,doubley,doublez)〃平移

voidglScale{fd}(TYPESx,TYPESytTYPESz)〃縮放

voidgIRotate{fd}(TYPEangle,TYPEx,TYPEy,TYPEz);〃旋轉

5.3、投影變換(Projection)

5.3.1、解釋何為透視投影,何為平行投影

一個點光源把一個圖形照射到一個平面上、這個圖形的影子就

是它在這個平面上的中心投影,中心投影后的圖形與原圖形相比雖

然改變較多、但直觀性強、看起來與人的視覺效果一致。

有時光線是一組互相平行的射線,例如太陽光或探照燈光的一

束光中的光線。由平行光線形成的投影是平行投影(parallel

projection).

5.3.2、寫出OpenGL中關于這兩種投影方式的函數

透視投影:voidglFrustum(...);

voidgluPcrspcctivc(...);

平行投影:voidglOrtho();

裁剪

裁剪操作對編程人員來說是隱藏的;目前圖形流水線中的裁剪發

生在投影變換之前。裁剪之后往往就不是以前的多邊形了,可能變成

了一個或多個多邊形。OpenGL中是三維裁剪。

5.4、窗口到視口的變換

5.4.1理解窗口到視口的變換過程

5.4.2如何才能使繪制的物體不會因“窗口到視口的變換”而變形?

6、OpenGL

6.1、“OpenGL是一個狀態機”,這句話如何解釋?

整個繪制操作會按照固定的流程進行,仿佛一臺虛擬的機器。

OpenGL函數只是用來設置這臺虛擬機器的一些狀態參數,而并

不是用來真正執行繪制操作的。

6.2、OpenGL中的模型變換(Model-ViewTransformation)采用了棧來

管理變換矩陣,解釋glLoadldentityO,glPushMatrix。和glPopMatrix()

這三個棧管理函數的作用

glLoadldentityO—Setthestacktopasanunitmatrix(使棧

頂矩陣為單位矩陣)

glLoadldentityO

glPushMatrix()將棧頂矩陣復制一份,入棧.

glPopMatrix()退棧.

國gIPusliMatrixO

6.3、給出一段模型變換的例程,可以解釋它所完成的變換操作

6.4、如何計算一個面片的法向?

Normaliscloselyrelatedtothelightingcomputation

(法向與光照計算緊密相關);Normalsshouldbegivenby

programmers

Thenormaloftrangle(vl,v2,v3):

vectorl=v2-vl;

vector2=v3-vl;

NormalVectoristhecrossproductofvectorlandvector2

7、Visible-SurfaceDetection(消隱)

7.1、解釋圖形顯示中為何需要消隱處理

在繪制時需要消除被遮擋的不可見的線或面,習慣上稱作消除隱

藏線和隱藏面,簡稱為消隱。

消除二義性提高繪制效率

7.2、何為depthbuffer?理解z-buffcr方法的原理

Z軸緩沖也被稱為深度緩沖,它保存在屏幕上每個像素的深度值。

在把顯示對象的每個面上每一點的顏色值填入幀緩沖器相應單元前,

要把這點的z坐標值和z緩沖器中相應單元的值進行比較。只有前者

大于后者時才改變幀緩沖器的那一單元的值,同時z緩沖器中相應單

元的值也要改成這點的Z坐標值。如果這點的Z坐標值小十Z緩沖器

中的值,則說明對應象素已經顯示了對象上一個點的屬性,該點要比

考慮的點更接近觀察點。

對顯示對象的每個面上的每個點都做了上述處理后,便可得到消除了

隱藏面的圖。

注意:如果當前像素的深度和深度緩存中的值相等,那么也認為當前

像素被擋住了。

?Z-Buffer算法在像素級上以近物取代遠物。面片在屏幕上的出現順

序是無關緊要的。

這種取代方法實現起來遠比總體排序靈活簡單,有利于硬件實現;

缺點:占用空間大,沒有利用圖形的相關性與連續性

8、Photo-realisticRenderinginComputerGraphics

8.1、寫出Phong光照明模型,理解模型中三個部分的意義及計算方

法,并能解釋各部分參數的含義

IlluminationModel(光照明模型)----Ambient+Diffuse+

Specular

I=kala+kdIICOsO+AsIicos"①-kalaAdh(N.L)+ksh

(R?V)〃

Phong光照明模型

1.Diffusereflection(漫反射)

漫反射光可以認為是光穿過物體表面層被部分吸收后,重新

發射出來的光。因此漫反射光均勻地散布在各個方向.觀察者不論站

在哪一方位上.他所觀察到的漫射光的強度均相等。粗糙的物體表面

可以理解為由一系列各向異性的微小平面陶成的,這些平面將把光線

反射到不同的方向上。由于這些微小平面的數量相當多,因此,從總

體上可視為光線均勻地反射到各個方向。越斜的燈光,反射之強度越

弱。

點光源.

■LamerfsCosineLaw:I=kJcos3=kdIt(N.L)

kdisthediffuse-reflectioncoefficient(漫反射系數)or

diffusedreflectivity(漫反射率);e[0,1]

N.L計算的就是法向和光線方向夾角的cos值。K”反映了當前物

體表面的反射屬性。

I,II和kd都可以分解為針對R,GB的三個分量。

2.SpecuIar

溫馨提示

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

評論

0/150

提交評論