亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法

文檔序號(hào):9751756閱讀:216來源:國知局
一種面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計(jì)算機(jī)圖形學(xué)領(lǐng)域,尤其涉及一種面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法。
【背景技術(shù)】
[0002]坐標(biāo)系統(tǒng)處理作為圖形處理技術(shù)的核心和關(guān)鍵廣泛應(yīng)用于各型圖形處理系統(tǒng)中,OpenGL接口雖已定義坐標(biāo)系統(tǒng)轉(zhuǎn)換形式,但未具體規(guī)定實(shí)現(xiàn)方式,英偉達(dá)、AMD等圖形處理器芯片廠家都有其實(shí)現(xiàn)形式,但未對外公開。目前在公開資料或者專利中描述的坐標(biāo)轉(zhuǎn)換算法都無法處理全坐標(biāo)空間,當(dāng)輸入在經(jīng)過處理W小于等于O時(shí),就發(fā)生處理異常。
[0003]本發(fā)明針對上述的處理異常,提供一種面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法,支持全坐標(biāo)空間坐標(biāo)的處理。

【發(fā)明內(nèi)容】

[0004]本發(fā)明提供一種面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法,主要解決了現(xiàn)有系統(tǒng)無法快速有效處理異常坐標(biāo)的問題。
[0005]本發(fā)明的具體技術(shù)解決方案是:
[0006]該面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法包括以下步驟:
[0007]I】用戶輸入模型空間坐標(biāo),將用戶輸入的模型空間坐標(biāo)轉(zhuǎn)換為眼睛空間坐標(biāo);
[0008]2】對眼睛空間坐標(biāo)進(jìn)行平面裁剪,輸出裁剪后的頂點(diǎn)坐標(biāo)信息;所述平面裁剪包括裁剪和輔助裁剪,裁剪用于實(shí)現(xiàn)OpenGL接口中g(shù)lClipPlane所涉及的功能,輔助裁剪配置由投影變換參數(shù)決定,完成將投影變換處理后W小于等于O的頂點(diǎn)裁剪掉以確保到齊次坐標(biāo)變換時(shí)所有頂點(diǎn)坐標(biāo)信息W大于O;
[0009]3】對經(jīng)步驟2裁剪處理所得的頂點(diǎn)坐標(biāo)信息進(jìn)行投影變換處理并輸出;
[0010]4】對經(jīng)步驟3投影處理所得的頂點(diǎn)坐標(biāo)信息進(jìn)行齊次坐標(biāo)變換并輸出;
[0011]5】對經(jīng)步驟4齊次坐標(biāo)變換處理所得的頂點(diǎn)坐標(biāo)信息進(jìn)行剪掉將OpenGL接口指定的可視區(qū)域之外的圖元裁剪掉,然后將將頂點(diǎn)坐標(biāo)信息轉(zhuǎn)化為[_1,1]標(biāo)準(zhǔn)化空間坐標(biāo);
[0012]6】對經(jīng)步驟5處理所得的標(biāo)準(zhǔn)化空間坐標(biāo)轉(zhuǎn)化到屏幕空間坐標(biāo)。
[0013]上述步驟I中將用戶輸入的模型空間坐標(biāo)轉(zhuǎn)換為眼睛空間坐標(biāo)具體采用矩陣管理和矩陣乘法處理;矩陣管理用于對模型視圖矩陣更新、壓/彈棧和逆矩陣管理;矩陣乘法完成對頂點(diǎn)坐標(biāo)的模型視圖矩陣乘處理。
[0014]上述步驟3中投影變換處理具體采用矩陣管理和矩陣乘法處理,矩陣管理用于對模型視圖矩陣更新、壓/彈棧和逆矩陣管理;矩陣乘法完成對頂點(diǎn)坐標(biāo)的投影矩陣乘處理。
[0015]該面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理系統(tǒng),包括依次連接的模型視圖變換模塊、平面裁剪模塊、投影變換模塊、齊次坐標(biāo)模塊、視鏡體裁剪模塊以及窗口變換模塊,其中平面裁剪模塊包括裁剪單元和輔助裁剪單元,裁剪單元用于實(shí)現(xiàn)OpenGL接口中g(shù)lClipPlane涉及的功能,輔助裁剪單元用于將投影變換處理后W小于等于O的頂點(diǎn)裁剪掉以確保齊次坐標(biāo)變換時(shí)所有坐標(biāo)信息W大于O。
[0016]上述齊次坐標(biāo)模塊用于除去頂點(diǎn)坐標(biāo)X、Y、Z分量中的W分量,以實(shí)現(xiàn)坐標(biāo)整體縮放的功能。
[0017]本發(fā)明的優(yōu)點(diǎn)是:
[0018]本發(fā)明以流水線形式,在平面裁剪階段增加默認(rèn)平面裁剪功能,使得整個(gè)坐標(biāo)處理系統(tǒng)能夠完全處理所有輸入坐標(biāo)。
【附圖說明】
[0019]圖1是本發(fā)明的功能框圖;
[0020]附圖明細(xì)如下:1-模型視圖變換模塊、2-平面裁剪模塊、3-投影變換模塊、4-齊次坐標(biāo)模塊、5-視鏡體裁剪模塊、6-窗口變換模塊。
【具體實(shí)施方式】
[0021]下面結(jié)合附圖和具體實(shí)施例,對本發(fā)明的技術(shù)方案進(jìn)行清楚、完整地表述。顯然,所表述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例,基于本發(fā)明中的實(shí)施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提所獲得的所有其他實(shí)施例,都屬于本發(fā)明的保護(hù)范圍。
[0022]OpenGL規(guī)定的坐標(biāo)處理流程中,用戶輸入的模型空間坐標(biāo)需經(jīng)過模型視圖變換、平面裁剪、投影變換、視窗變換最終轉(zhuǎn)換為屏幕空間坐標(biāo);投影變換處理實(shí)現(xiàn)坐標(biāo)變換到[_1.0,1.0]標(biāo)準(zhǔn)化坐標(biāo)系,包括坐標(biāo)的轉(zhuǎn)換、透視除法和視鏡體裁剪三部分。
[0023]但在透視除法時(shí):W等于O無法進(jìn)行處理,W大于O和W小于O坐標(biāo)會(huì)映射到不同空間,OpenGL在處理過程中僅處理W大于O的情況;基于功能和性能考慮,本發(fā)明在平面裁剪階段增加輔助裁剪平面,在平面裁剪階段裁剪掉W小于等于O的情況,確保透視除法的輸入頂點(diǎn)的正確性。
[0024]本發(fā)明提供的面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法包括以下步驟:
[0025 ] I】用戶輸入模型空間坐標(biāo),將用戶輸入的模型空間坐標(biāo)轉(zhuǎn)換為眼睛空間坐標(biāo);將用戶輸入的模型空間坐標(biāo)轉(zhuǎn)換為眼睛空間坐標(biāo)具體采用矩陣管理和矩陣乘法處理;矩陣管理用于對模型視圖矩陣更新、壓/彈棧和逆矩陣管理;矩陣乘法完成對頂點(diǎn)坐標(biāo)的模型視圖矩陣乘處理;
[0026]2】對眼睛空間坐標(biāo)進(jìn)行平面裁剪,輸出裁剪后的頂點(diǎn)坐標(biāo)信息;所述平面裁剪包括裁剪和輔助裁剪,裁剪用于實(shí)現(xiàn)OpenGL接口中g(shù)lClipPlane所涉及的功能,輔助裁剪配置由投影變換參數(shù)決定,完成將投影變換處理后W小于等于O的頂點(diǎn)裁剪掉以確保到齊次坐標(biāo)變換時(shí)所有頂點(diǎn)坐標(biāo)信息W大于O;
[0027]3】對經(jīng)步驟2裁剪處理所得的頂點(diǎn)坐標(biāo)信息進(jìn)行投影變換處理并輸出;所述投影變換處理具體采用矩陣管理和矩陣乘法處理,矩陣管理用于對模型視圖矩陣更新、壓/彈棧和逆矩陣管理;矩陣乘法完成對頂點(diǎn)坐標(biāo)的投影矩陣乘處理。
[0028]4】對經(jīng)步驟3投影處理所得的頂點(diǎn)坐標(biāo)信息進(jìn)行齊次坐標(biāo)變換并輸出;
[0029]5】對經(jīng)步驟4齊次坐標(biāo)變換處理所得的頂點(diǎn)坐標(biāo)信息進(jìn)行剪掉將OpenGL接口指定的可視區(qū)域之外的圖元裁剪掉,然后將將頂點(diǎn)坐標(biāo)信息轉(zhuǎn)化為[_1,1]標(biāo)準(zhǔn)化空間坐標(biāo);
[0030]6】對經(jīng)步驟5處理所得的標(biāo)準(zhǔn)化空間坐標(biāo)轉(zhuǎn)化到屏幕空間坐標(biāo)。
[0031]該面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理系統(tǒng)包括依次連接的模型視圖變換模塊1、平面裁剪模塊2、投影變換模塊3、齊次坐標(biāo)模塊4、視鏡體裁剪模塊5、窗口變換模塊6。
[0032]其中模型視圖變換模塊完成OpenGL規(guī)定的模型視圖變換功能,實(shí)現(xiàn)將用戶輸入的模型空間坐標(biāo)轉(zhuǎn)換為眼睛空間坐標(biāo);其包含矩陣管理和矩陣乘法;矩陣管理用于對模型視圖矩陣更新、壓/彈棧和逆矩陣管理;矩陣乘法完成對頂點(diǎn)坐標(biāo)的模型視圖矩陣乘處理。
[0033]平面裁剪模塊包含裁剪功能和輔助裁剪兩部分,裁剪功能實(shí)現(xiàn)OpenGL接口中g(shù)lClipPlane所涉及的功能,輔助裁剪實(shí)現(xiàn)將投影變換模塊處理后W小于等于O的頂點(diǎn)裁剪掉,確保到齊次坐標(biāo)模塊時(shí)所有坐標(biāo)信息W大于O。
[0034]投影變換模塊完成OpenGL規(guī)定的投影變換變換功能,其包含矩陣管理和矩陣乘法;矩陣管理用于對模型視圖矩陣更新、壓/彈棧和逆矩陣管理;矩陣乘法完成對頂點(diǎn)坐標(biāo)的投影矩陣乘處理。
[0035]齊次坐標(biāo)模塊完成物體的大小縮放功能,其實(shí)現(xiàn)頂點(diǎn)坐標(biāo)X、Y、Z分量除以W分量。
[0036]視鏡體裁剪模塊完成將OpenGL接口指定的可視區(qū)域之外的圖元裁剪掉,協(xié)同投影變換模塊、齊次坐標(biāo)模塊實(shí)現(xiàn)將眼睛空間坐標(biāo)轉(zhuǎn)化為[-1,I ]標(biāo)準(zhǔn)化空間坐標(biāo)。
[0037]窗口變換模塊完成[_1,1]標(biāo)準(zhǔn)化空間坐標(biāo)轉(zhuǎn)化到和屏幕空間坐標(biāo)。
[0038]最后應(yīng)說明的是,以上事實(shí)例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解;其依然可以對前述各實(shí)施例記載的技術(shù)方案進(jìn)行修改,或者對其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。
【主權(quán)項(xiàng)】
1.一種面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法,其特征在于,包括以下步驟: I】用戶輸入模型空間坐標(biāo),將用戶輸入的模型空間坐標(biāo)轉(zhuǎn)換為眼睛空間坐標(biāo); 2】對眼睛空間坐標(biāo)進(jìn)行平面裁剪,輸出裁剪后的頂點(diǎn)坐標(biāo)信息;所述平面裁剪包括裁剪和輔助裁剪,裁剪用于實(shí)現(xiàn)OpenGL接口中g(shù)lClipPlane所涉及的功能,輔助裁剪配置由投影變換參數(shù)決定,完成將投影變換處理后W小于等于O的頂點(diǎn)裁剪掉以確保到齊次坐標(biāo)變換時(shí)所有頂點(diǎn)坐標(biāo)信息W大于O; 3】對經(jīng)步驟2裁剪處理所得的頂點(diǎn)坐標(biāo)信息進(jìn)行投影變換處理并輸出; 4】對經(jīng)步驟3投影處理所得的頂點(diǎn)坐標(biāo)信息進(jìn)行齊次坐標(biāo)變換并輸出; 5】對經(jīng)步驟4齊次坐標(biāo)變換處理所得的頂點(diǎn)坐標(biāo)信息進(jìn)行剪掉將OpenGL接口指定的可視區(qū)域之外的圖元裁剪掉,然后將將頂點(diǎn)坐標(biāo)信息轉(zhuǎn)化為[_1,1]標(biāo)準(zhǔn)化空間坐標(biāo); 6】對經(jīng)步驟5處理所得的標(biāo)準(zhǔn)化空間坐標(biāo)轉(zhuǎn)化到屏幕空間坐標(biāo)。2.根據(jù)權(quán)利要求1所述面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法,其特征在于:所述步驟I中將用戶輸入的模型空間坐標(biāo)轉(zhuǎn)換為眼睛空間坐標(biāo)具體采用矩陣管理和矩陣乘法處理;矩陣管理用于對模型視圖矩陣更新、壓/彈棧和逆矩陣管理;矩陣乘法完成對頂點(diǎn)坐標(biāo)的模型視圖矩陣乘處理。3.根據(jù)權(quán)利要求1所述面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法,其特征在于:所述步驟3中投影變換處理具體采用矩陣管理和矩陣乘法處理,矩陣管理用于對模型視圖矩陣更新、壓/彈棧和逆矩陣管理;矩陣乘法完成對頂點(diǎn)坐標(biāo)的投影矩陣乘處理。4.一種面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理系統(tǒng),包括依次連接的模型視圖變換模塊、平面裁剪模塊、投影變換模塊、齊次坐標(biāo)模塊、視鏡體裁剪模塊、窗口變換模塊,其特征在于:所述平面裁剪模塊包括裁剪單元和輔助裁剪單元,裁剪單元用于實(shí)現(xiàn)OpenGL接口中g(shù)lClipPlane涉及的功能,輔助裁剪單元用于將投影變換處理后W小于等于O的頂點(diǎn)裁剪掉以確保齊次坐標(biāo)變換時(shí)所有坐標(biāo)信息W大于O。5.根據(jù)權(quán)利要求4所述的面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理系統(tǒng),其特征在于:所述齊次坐標(biāo)模塊實(shí)現(xiàn)頂點(diǎn)坐標(biāo)Χ、γ、ζ分量除以W分量,使坐標(biāo)具備整體縮放的功能。
【專利摘要】本發(fā)明提供一種面向OpenGL實(shí)現(xiàn)的坐標(biāo)系統(tǒng)處理方法,主要解決了現(xiàn)有系統(tǒng)無法快速有效處理異常坐標(biāo)的問題。本發(fā)明的具體技術(shù)解決方案的核心在于提供了坐標(biāo)轉(zhuǎn)換功能外,同時(shí)在平面裁剪模塊增加輔助裁剪功能,保證用戶輸入的所有坐標(biāo)能夠進(jìn)行正確處理,為圖形處理產(chǎn)品的設(shè)計(jì)提供有效支撐。
【IPC分類】G06T19/00
【公開號(hào)】CN105513138
【申請?zhí)枴緾N201510926416
【發(fā)明人】馬城城, 田澤, 劉暉, 張駿, 許宏杰, 張琛
【申請人】中國航空工業(yè)集團(tuán)公司西安航空計(jì)算技術(shù)研究所
【公開日】2016年4月20日
【申請日】2015年12月11日
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1