首頁 > 其他

matlab三維圖形的燈光、照明和材質處理

2019-12-25 14:21:06

    三維網線圖和曲面圖的繪製比線圖稍顯複雜,這主要表現於圖形資料的準備。三維圖形的色彩、明暗、光照和視點處理。下面我就向大家簡要介紹一下matlab對三維圖形的燈光、照明和材質處理。


1

燈光設定(light)light指令函數的呼叫語法:? ??light('color',option1,'style',option2,'position',option3) %定光設定關於 light指令的說明:? option1可採用RGB三元組或相應的色彩字元。如[1 0 0]或'r'都代表紅光。? option2有兩個取值'infinite',表示無窮遠光;'local'表示近光。? option3總為直角坐標的三元陣列形式。對遠光,它表示光線穿過該點射向原點;對近光,它表示光源所在位置。? ?該指令的任何「一組輸入量對」都可以空缺,空缺採用預設設定替代。該指令不包含任何輸人量時,預設:自光、無窮遠、穿過[1
,0,1]射向坐標原點。? ?應該指出:在light使用前,圖形各處採用相等強度漫射光。一旦light被執行,圖形的「麵」等物件所有與「光」有關的屬性(如背景光、邊緣光)都將被啟用,但光源本身不出現在圖形窗中。

2

照明設定(lighting)呼叫語法: lighting options?? %設定照明模式該指令只有在light指令執行執行後在起作用,此外options有以下四種取值:?flat:入射光均勻灑落在圖形上的每個面上,主要與facted配用,他是預設模式。?gouraud:先對頂點顏色插補,再對頂點勾劃的面色進行插補,用於曲面表現。?phong:對定點出法線插值,在計算各個畫素的反光,表現效果最好。?none:使所有光源關閉。

3

材質指令(material)呼叫語法: material options??? %使用預定義反射模式matlab提供了以下四種預定義表面反射模式,即options有以下四種取值:?shiny:使物件比較明亮;鏡反射份額較大,反射光顏色僅取決於光源顏色。?dull:使物件比較暗淡;漫反射份額較大,沒有鏡面亮點,反射光顏色僅取決於光源顏色。?metal:使物件帶金屬光澤;鏡反射份額很大,背景光和漫反射份額很小,反射光顏色僅取決於光源和圖形表面兩者的顏色,該模式為預設設定。?default:返回預設設定模式。

4

燈光、照明和材質處理所表現出的圖形,具體繪製程式碼如下圖所示:


5

燈光、照明和材質所表現出的具體圖形,即上一步執行的結果如下圖所示:


6

歡迎分享本經驗到微博、QQ空間、人人空間等,小夥伴們一起分享!



IT145.com E-mail:sddin#qq.com