專利名稱:計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注的方法
技術領域:
本發(fā)明涉及一種三維圖形的顯示方法,特別涉及一種三維圖形的標注的顯示控制方法,具體是指一種計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法。
背景技術:
隨著近幾年顯示技術的發(fā)展,交互式顯示技術的地位日益重要。有時需要對用戶在交互過程中生成的圖樣的幾何信息和其它的額外信息進行標注。標注的靈活性以及準確性,很大程度上影響用戶體驗。擁有文本標注的演示場景,能結合圖形的形象化特點和文字的準確性特點,充分挖掘演示軟件的潛力。同時,標注本身也是一種可以渲染的對象,好的標注應該與演示場景的風格融為一體。標注同時也屬于幾何體本身,當幾何體處于動畫過程中,標注文本本身也應有相應的動畫效果以反映幾何體的變化。最后,文本標記需要與宿主相同的渲染流程,才能方便的與現(xiàn)有程序結合,而渲染標記本身也影響的圖形系統(tǒng)整體的性能。目前的標記技術主要標記全局信息,常見于一些網(wǎng)絡游戲的應用場景中。這些信息是多為提示性信息,與渲染場景本身無關。渲染過程在場景渲染完成之后進行,且在二維的屏幕坐標下完成。其他的一些標注方法也大多集成在動畫模型中,其缺點是通用性較差, 需要修改標注時,往往需要修改模型或者渲染技術。對于一些要求相對靈活,參數(shù)較多且須動態(tài)變化的參數(shù),現(xiàn)有技術中則一般采用對話框模式給出,這樣的標注方法顯得突兀,且嚴重影響畫面的整體效果和用戶體驗。
發(fā)明內容
本發(fā)明的目的是克服了上述現(xiàn)有技術中的缺點,提供一種能夠靈活、動態(tài)地對三維場景進行標記,具有較高的通用性,且具有與場景相匹配的渲染效果,用戶體驗更佳的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法。為了實現(xiàn)上述的目的,本發(fā)明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法包括以下步驟(1)系統(tǒng)生成被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的標注參數(shù);(2)系統(tǒng)基于所述的標注參數(shù)生成標注圖形數(shù)據(jù)信息;(3)系統(tǒng)基于所述的標注圖形數(shù)據(jù)信息生成標記紋理多邊形數(shù)據(jù)信息;(4)系統(tǒng)將所述的標記紋理多邊形數(shù)據(jù)信息和被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形一同顯示。在該計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法中,所述的步驟(1)具體包括以下步驟(11)系統(tǒng)確定被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的數(shù)據(jù)類型;(12)系統(tǒng)根據(jù)所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的類型確定標注參數(shù)。其中,所述的標注參數(shù)包括三維動態(tài)幾何圖形數(shù)據(jù)信息的邊長、角度、體積、表面積信息。在該計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法中,所述的步驟( 具體包括以下步驟(21)系統(tǒng)根據(jù)所述的標注參數(shù)確定標注數(shù)量;(22)系統(tǒng)根據(jù)所述的標注參數(shù)確定各標注的圖形尺寸信息。其中,所述的標注參數(shù)包括整體參數(shù)類信息和局部參數(shù)類信息。所述的步驟具體是指系統(tǒng)將一個整體參數(shù)類信息和多個局部參數(shù)類信息的個數(shù)之和確定為標注數(shù)量。所述的步驟0 具體是指系統(tǒng)根據(jù)所述的標注參數(shù)的文本大小確定標注的圖形尺寸信息。所述的圖形尺寸信息的值為2的整數(shù)次冪,當所述的文本大小為連續(xù)兩個2 的整數(shù)次冪的中間值時,圖形尺寸信息的值為所述的兩個2的整數(shù)次冪中的較大值。在該計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法中,所述的步驟C3)具體包括以下步驟(31)系統(tǒng)在被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息所基于的三維坐標系中確定標注圖形數(shù)據(jù)信息所依附的頂點坐標;(32)系統(tǒng)根據(jù)所述的標注圖形數(shù)據(jù)信息在三維坐標系中的頂點坐標生成該標注圖形信息基于視坐標系的標記紋理多邊形數(shù)據(jù)信息;(33)系統(tǒng)根據(jù)所述的標注參數(shù)對所述的標記紋理多邊形數(shù)據(jù)信息進行調整。其中,所述的步驟(32)具體包括以下步驟(32-1)系統(tǒng)根據(jù)所述的標注圖形數(shù)據(jù)信息在三維坐標系中的頂點坐標產生該標注圖形數(shù)據(jù)信息在系統(tǒng)的顯示器中的尺寸;(32-2)系統(tǒng)根據(jù)所述的標注圖形數(shù)據(jù)信息在系統(tǒng)顯示器中的尺寸產生該標注圖形在視坐標系中的標記紋理多邊形數(shù)據(jù)信息。所述的步驟(3 具體包括以下步驟(33-1)系統(tǒng)將所述的標注參數(shù)的文本尺寸與所述的標記紋理多邊形數(shù)據(jù)信息所表示的實際尺寸之比作為該紋理多邊形數(shù)據(jù)信息的調整中值;(33-2)系統(tǒng)根據(jù)所述的調整中值對所述的標記紋理多邊形數(shù)據(jù)信息所表示的尺寸進行調整。在該計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法中,所述的步驟(4)具體包括以下步驟(41)系統(tǒng)確定所述的標記紋理多邊形數(shù)據(jù)信息在三維坐標系中的中心點,并將該中心點轉換到視坐標系中;(42)系統(tǒng)將被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的頂點坐標轉換到視坐標系中;(43)系統(tǒng)對視坐標系中的三維動態(tài)幾何圖形數(shù)據(jù)信息和標記紋理多邊形數(shù)據(jù)信息所表示的圖形進行渲染處理。其中,所述的步驟具體是指系統(tǒng)采用背景透明顯示方式或文本鏤空顯示方式對所述的三維動態(tài)幾何圖形數(shù)據(jù)信息和標記紋理多邊形數(shù)據(jù)信息所表示的圖形進行渲染處理。
優(yōu)選地,在該計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法中,所述的方法在步驟(4)之后還包括以下步驟(5)系統(tǒng)根據(jù)所述的被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的變化,對所述的標記紋理多邊形數(shù)據(jù)信息進行更新。其中,所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的變化包括該三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形的平移、縮放和旋轉變化。在該計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法中,所述的步驟( 具體包括以下步驟(51)系統(tǒng)將該三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形的平移、縮放或旋轉變化均轉換為以三維動態(tài)幾何圖形數(shù)據(jù)信息的平移變化方法表示;(52)系統(tǒng)根據(jù)所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的平移變化重新確定所述的標記紋理多邊形數(shù)據(jù)信息所表示的圖形的中心點;(53)系統(tǒng)對所述的三維動態(tài)幾何圖形數(shù)據(jù)信息和標記紋理多邊形數(shù)據(jù)信息所表示的圖形進行渲染處理。其中,所述的步驟(51)具體是指系統(tǒng)根據(jù)所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的中點在三維坐標系中的位置變化構造平移矩陣,所述的平移矩陣mtl為平移矩陣mtl =物體的三維坐標系變換矩陣X物體平移矩陣。所述的步驟(5 具體是指系統(tǒng)將標記紋理多邊形數(shù)據(jù)信息的在三維坐標系中的中心點乘以所述的平移矩陣mtl作為新的中心點位置,并將該新的中心點轉換到視坐標系中。采用了該發(fā)明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其由系統(tǒng)首先生成被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的標注參數(shù);再基于標注參數(shù)生成標注圖形數(shù)據(jù)信息;隨后基于標注圖形數(shù)據(jù)信息生成標記紋理多邊形數(shù)據(jù)信息;最后將標記紋理多邊形數(shù)據(jù)信息和被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形一同顯示,以實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示的控制。采用該發(fā)明的方法使標注與幾何圖形形成一個有機的整體,能靈活、動態(tài)地對三維場景進行標記,具有較高的通用性,且具有與場景相匹配的渲染效果,又能使用戶便于區(qū)分,從而提供更佳的用戶體驗。本發(fā)明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法應用方式簡便,實現(xiàn)成本較為低廉,且應用范圍較為廣泛。
圖1為本發(fā)明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法的步驟流程圖。圖2為利用本發(fā)明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法實現(xiàn)的圖形發(fā)生幾何變化時的標注更新顯示示意圖。圖3為利用本發(fā)明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法實現(xiàn)的標記在不同的宿主物體渲染模式下顯示的示意圖。
具體實施例方式為了能夠更清楚地理解本發(fā)明的技術內容,特舉以下實施例詳細說明。請參閱圖1所示,為本發(fā)明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法的步驟流程圖。在一種實施方式中,該方法包括以下步驟(1)系統(tǒng)生成被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的標注參數(shù);(2)系統(tǒng)基于所述的標注參數(shù)生成標注圖形數(shù)據(jù)信息;(3)系統(tǒng)基于所述的標注圖形數(shù)據(jù)信息生成標記紋理多邊形數(shù)據(jù)信息;(4)系統(tǒng)將所述的標記紋理多邊形數(shù)據(jù)信息和被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形一同顯示。在一種較優(yōu)選的實施方式中,所述的步驟(1)具體包括以下步驟(11)系統(tǒng)確定被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的數(shù)據(jù)類型;(12)系統(tǒng)根據(jù)所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的類型確定標注參數(shù)。其中,所述的標注參數(shù)包括三維動態(tài)幾何圖形數(shù)據(jù)信息的邊長、角度、體積、表面積信息。在另一種較優(yōu)選的實施方式中,所述的步驟( 具體包括以下步驟(21)系統(tǒng)根據(jù)所述的標注參數(shù)確定標注數(shù)量;(22)系統(tǒng)根據(jù)所述的標注參數(shù)確定各標注的圖形尺寸信息。其中,所述的標注參數(shù)包括整體參數(shù)類信息和局部參數(shù)類信息。在一種進一步優(yōu)選的實施方式中,所述的步驟具體是指系統(tǒng)將一個整體參數(shù)類信息和多個局部參數(shù)類信息的個數(shù)之和確定為標注數(shù)量。在另一種進一步優(yōu)選的實施方式中,所述的步驟0 具體是指系統(tǒng)根據(jù)所述的標注參數(shù)的文本大小確定標注的圖形尺寸信息。其中,所述的圖形尺寸信息的值為2的整數(shù)次冪,當所述的文本大小為連續(xù)兩個2 的整數(shù)次冪的中間值時,圖形尺寸信息的值為所述的兩個2的整數(shù)次冪中的較大值。在又一種較優(yōu)選的實施方式中,所述的步驟C3)具體包括以下步驟(31)系統(tǒng)在被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息所基于的三維坐標系中確定標注圖形數(shù)據(jù)信息所依附的頂點坐標;(32)系統(tǒng)根據(jù)所述的標注圖形數(shù)據(jù)信息在三維坐標系中的頂點坐標生成該標注圖形信息基于視坐標系的標記紋理多邊形數(shù)據(jù)信息;(33)系統(tǒng)根據(jù)所述的標注參數(shù)對所述的標記紋理多邊形數(shù)據(jù)信息進行調整。在一種進一步優(yōu)選的實施方式中,所述的步驟(3 具體包括以下步驟(32-1)系統(tǒng)根據(jù)所述的標注圖形數(shù)據(jù)信息在三維坐標系中的頂點坐標產生該標注圖形數(shù)據(jù)信息在系統(tǒng)的顯示器中的尺寸;(32-2)系統(tǒng)根據(jù)所述的標注圖形數(shù)據(jù)信息在系統(tǒng)顯示器中的尺寸產生該標注圖形在視坐標系中的標記紋理多邊形數(shù)據(jù)信息。在另一種進一步優(yōu)選的實施方式中,所述的步驟(3 具體包括以下步驟(33-1)系統(tǒng)將所述的標注參數(shù)的文本尺寸與所述的標記紋理多邊形數(shù)據(jù)信息所表示的實際尺寸之比作為該紋理多邊形數(shù)據(jù)信息的調整中值;
(33-2)系統(tǒng)根據(jù)所述的調整中值對所述的標記紋理多邊形數(shù)據(jù)信息所表示的尺寸進行調整。在再一種較優(yōu)選的實施方式中,所述的步驟(4)具體包括以下步驟(41)系統(tǒng)確定所述的標記紋理多邊形數(shù)據(jù)信息在三維坐標系中的中心點,并將該中心點轉換到視坐標系中;(42)系統(tǒng)將被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的頂點坐標轉換到視坐標系中;(43)系統(tǒng)對視坐標系中的三維動態(tài)幾何圖形數(shù)據(jù)信息和標記紋理多邊形數(shù)據(jù)信息所表示的圖形進行渲染處理。在一種進一步優(yōu)選的實施方式中,所述的步驟具體是指系統(tǒng)采用背景透明顯示方式或文本鏤空顯示方式對所述的三維動態(tài)幾何圖形數(shù)據(jù)信息和標記紋理多邊形數(shù)據(jù)信息所表示的圖形進行渲染處理。在一種更優(yōu)選的實施方式中,所述的方法在步驟(4)之后還包括以下步驟(5)系統(tǒng)根據(jù)所述的被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的變化,對所述的標記紋理多邊形數(shù)據(jù)信息進行更新。其中,所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的變化包括該三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形的平移、縮放和旋轉變化。在一種進一步優(yōu)選的實施方式中,所述的步驟( 具體包括以下步驟(51)系統(tǒng)將該三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形的平移、縮放或旋轉變化均轉換為以三維動態(tài)幾何圖形數(shù)據(jù)信息的平移變化方法表示;(52)系統(tǒng)根據(jù)所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的平移變化重新確定所述的標記紋理多邊形數(shù)據(jù)信息所表示的圖形的中心點;(53)系統(tǒng)對所述的三維動態(tài)幾何圖形數(shù)據(jù)信息和標記紋理多邊形數(shù)據(jù)信息所表示的圖形進行渲染處理。在更進一步優(yōu)選的實施方式中,所述的步驟(51)具體是指系統(tǒng)根據(jù)所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的中點在三維坐標系中的位置變化構造平移矩陣,所述的平移矩陣 mtl 為平移矩陣mtl =物體的三維坐標系變換矩陣X物體平移矩陣。所述的步驟(5 具體是指系統(tǒng)將標記紋理多邊形數(shù)據(jù)信息的在三維坐標系中的中心點乘以所述的平移矩陣mtl作為新的中心點位置,并將該新的中心點轉換到視坐標系中。本發(fā)明計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法其主要包括以下5個部分技術內容1、基本幾何參數(shù)的計算A、確定標注類型,主要是幾何體的邊長、角度、體積、表面積等信息,也包括其它額外信息。鑒于一般的渲染模式下,幾何體均由頂點表示的,需要在計算的基礎上得到有意義的標準信息,該計算過程需在標注前完成。B、確定幾何體類型,以采取與不同的幾何體類型對應的不用方法計算幾何信息。 對于一些需要積分才能獲取的參數(shù),例如表面積,則將根據(jù)幾何體的類型采用不同的方法計算。而對于像邊長,夾角之類的參數(shù),由于渲染模型多為基于頂點的線框模型,則較為容CN 102163340 A 易找到統(tǒng)一的計算方法。C、分析幾何體線性變化(平移、縮放、旋轉三種變換)的類型。在常規(guī)的幾何流水線中,線性變換不會改變幾何體在模型空間中的頂點,但是會在最終的場景中改變這些頂點。不同的線性變換對不同的參數(shù)的影響是不同的。剛體變換不會改變邊長、面積、角度等參數(shù),而縮放變換則直接影響這些參數(shù)。縮放變換對某些參數(shù)影響的方式又因是否等比例縮放而不同。因此需要宿主幾何體提供相關的幾何變換信息。2、標記像素的生成A、確定標記的數(shù)量。標記本質上是矩形圖片,根據(jù)用戶的要求,這些標記可以是全局的,例如幾何體的體積、表面積、質量等參數(shù)。整個幾何體只需一個標記即可完成。而對于邊長等參數(shù)則需要局部標記,這種標記的數(shù)目取決于邊數(shù)。這樣作是為了讓標記在用戶看來是有意義的。B、確定圖片尺寸。圖片以像素為單位,理論上,標記的本文的大小就是標記圖片的尺寸。但是考慮到渲染的易用性問題,絕大部分渲染模塊都要求圖片尺寸必須或最好為2 的整數(shù)次冪,同時為了不縮放字體,文本圖片是等比例生成的,然后向上拉升到最接近的2 的整數(shù)次冪。多余部分在渲染時由渲染方法消去。3、標記紋理多邊形與坐標的生成A、首先在三維場景中生成紋理多邊形所依附的頂點。紋理多邊形一般為矩形。多邊形的尺寸必須剛好為標記文本的大小。但是在上述第2部分中生成的紋理大小,一般不是標記文本大小。需要兩個步驟矯正多邊形尺寸,本步驟A主要調整文本大小與邏輯字體之間的尺寸。在三維場景中,標記紋理必須總是面對觀察者的,否則標記文本將會出現(xiàn)形變。完成這個方法可以利用三維變換的特性。以往的方法一般在視坐標下直接生成坐標, 但是這種方法難以適應依附于物體中某條邊或者某個角的標準。而在本發(fā)明中,首先在視坐標中生成多邊形,這是一個逆投影的過程,即先給出標記文本在物理顯示器上的尺寸,然后在視坐標中該標記紋理的頂點位置,標記紋理的中點在本第3部分中是不關心的。B、主要是為了配合第2部分中提高的視頻紋理兼容問題,為了抹去2的整數(shù)次冪尺寸中多余的部分,需要使用特殊的紋理坐標。為方便起見,將紋理坐標限制在0到1之間, 不考慮非常少見的大段文本拼接的情況,一般標記到小數(shù)點后2 4位就足夠精確。在生成紋理的過程中,標記文本的真實尺寸與實際形成紋理的標準化尺寸之比,就是紋理坐標中值。通過上述第3部分中A、B兩個過程,紋理被正確映射到多邊形的頂點上,同時多邊形頂點間的距離也能確保被正確投影到視景體的前截面上。4、三維場景中標記與幾何體的融合顯示當三維場景中存在多個被標注的幾何體時,需要將每個幾何體的標注移動到相應的位置,才能夠清晰分辨出哪些標注屬于哪個幾何體。尤其在場景中幾何體密度較大時,這對于使用者而言是非常重要的。本發(fā)明允許靈活地設置宿主幾何體的標注位置。對于全局性的標注,例如物體的表面積、體積等信息。標注在物體中心或者某個角外部是很直觀的。而對于局部信息,例如邊長,則因標準在中點或者邊的起點。對于幾何變換后的物體,標記應該有相對的移動。比如平移時,所有標記因隨著物體平移;物體放大時,標記因隨著原始附著位置作相應移動;旋轉也是類似情況。這后兩種情況下,標記本身不會隨著物體進行放大旋轉變換。本發(fā)明采用一種共享變換矩陣的方式實現(xiàn)上述這些效果。在物體的幾何造型頂點確定之后,標記紋理會根據(jù)這些頂點形成自己在世界坐標系中的中心點。渲染過程中,將這些中心點變換至觀察坐標。這些中心點在觀察坐標中的 XOY平面上偏移遠點的位置,就是本第4部分中形成的多邊形頂點需要平移的數(shù)值。任何對幾何體的變換,都將折合到標記紋理在世界坐標系下中心位置的變化。當這個點變換到視坐標下時,三種變換將全部折合為平移變換,因此計算過程是相對簡單的??紤]到渲染過程一般是以變換矩陣為基礎的,因此,本發(fā)明中,最后的變換也被計算為矩陣,以便讓標記像普通對象一樣渲染。不改變標記多邊形的頂點可以為后期優(yōu)化標記的效果提供方便。幾何體的頂點可以存在于模型坐標系下,因此標記位置在這個坐標系下是不會改變的。當物體作幾何變換時,將這個頂點通過與物體相同的矩陣進行變換即可得到其在世界坐標系下的位置。該方案將標注的中點置于與幾何體相同的坐標系下,共享同一變換矩陣。而標記多邊形的幾何頂點又直接存在于視坐標下,就能以一種非常簡潔的方式消除物體變換矩陣與標記幾何造型間的影響,同時也是一種非常容易實現(xiàn)的方法。最后,本發(fā)明還可以采用背景透明和文本鏤空兩種初步的渲染技術,最小化標記對幾何體的遮擋?;谄胀ǘ噙呅蔚臉擞涗秩?,也為后期使用著色器等技術優(yōu)化標記效果提供了基礎。最終的三維場景中標記與幾何體的融合顯示的效果如圖2和圖3所示。5、標記的實時更新當物體本身的幾何造型點發(fā)生改變,或者對物體施加了非剛體變換后,相應的標記參數(shù)也因隨之改變。不同的改變過程需要區(qū)分對待。刪除與重構紋理需要占用較大的系統(tǒng)開銷。在本發(fā)明中,最初的紋理由于要向上拉升至2的整數(shù)次冪,其尺寸一般大于最初紋理。當文本改變時,原有紋理不會刪除而是會改變其本身內容。紋理內存的讀取,是被幾乎所有顯卡支持的,且底層的視頻接口大多支持原地鎖定功能,這使本發(fā)明的方法具有更好的標記更新效率。按上文所敘,標記在模型坐標下的必須指定中心位置。選擇中心位置的策略是不同的,不只因物體類型不同,也因UI設計師對場景的理解而不同。其中后者可以通過定義著色器實現(xiàn)。并能通過特殊的著色器調整,標記的色彩與視覺效果也能用類似的方法修改。以下以標記立方體邊長為例,具體說明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法在實際實施中的步驟。該方法具有通用性,需要標注其它物體時,均可參照本例實施,基本無需改動。一、確認幾何體構造完成絕大部分幾何信息必須在幾何造型完成之后才能獲取,例如長方體的體積與邊長等信息。本過程中,也需要獲取幾何信息之外的信息,例如渲染屬性或用戶對它自定義的標記。渲染屬性主要是物體當前的渲染屬性,例如是否允許通道混合,紋理坐標的生成方式等。由于標記是作為物體的一部分渲染的,物體的渲染屬性會繼承這些屬性,并在啟動渲染之前,依據(jù)當前的渲染設置,進行調整。調整的方案是,將標記的渲染設置向二維圖片渲染方向調整,而非調整所有屬性, 調整所有屬性的代價可能比較大。以長方體為例,此時需要關閉光照或者相應的模擬著色器,如果長方體上有紋理,就需要將其設置為非激活狀態(tài)等等。
這個過程體現(xiàn)了標記對象本身和渲染物體的統(tǒng)一性,在步驟五中不再累述。二、生成標注圖片與紋理這個過程的核心是字體與尺寸,因為文本標記都是擁有字體的,不同的字體決定了字符串最終占用的空間。首先根據(jù)用戶設置,計算出當前字體下標記本文的大小。這個計算過程一般由操作系統(tǒng)的二維圖形API完成。然后根據(jù)上步中得到的大小,生成一幅位圖。此時的位圖不會作為渲染資源直接渲染,因此位圖的格式無關緊要。接著,本發(fā)明提供一個簡單的冪數(shù)表,表元素由2的整數(shù)次冪按升序組成。在表中找到當前位圖的長寬區(qū)間,如果剛好落在表元素上,則取該2的整數(shù)次冪,如果落在兩個元素之間,則取較大元素。以上述取得的規(guī)范尺寸重新構造一幅位圖,將當前位圖拷貝到新位圖上。通常約定拷貝位置為左上開始,拷貝過程中無拉升或者像素展寬等參數(shù)。向左上對齊拷貝對于后續(xù)步驟中紋理坐標的生成非常關鍵,并且左上拷貝是被絕大多數(shù)二維圖形API支持的。記錄拉升前與拉升后的尺寸比例,這個比例將在宿主物體為其計算紋理坐標時使用。三、生成觀察坐標下的頂點與紋理坐標本步驟中生成的紋理,在最終的渲染后,尺寸與二維文字在特定字體下的大小相等。本發(fā)明應用在正交投影的場景中,情形相對簡單。如果是在透視場景中,算法將稍有調整,詳見步驟四。由于線性變換是有歧義的,這里正好利用這種歧義,將本過程中生成的頂點假設在觀察坐標系內。如果投影坐標與視口的比例是1 1,本步驟三可以省去,但是一般卻不是這樣??紤]正投影下,屏幕坐標與投影坐標間長度的比值,并考慮在正交投影的模式下, 標記多邊形中心緊貼視景體后截面,且中心與原點重合。那么這個矩形的長寬為字符串長寬X視口與投影單位之比。這樣獲得了視坐標下的四個構型點。然后構造紋理坐標,該方案本質上也是縮放,但是卻采用了不同的技術。渲染中,由于文本是以左上方式對齊繪制的,所以下列紋理坐標可以剛好被剔除,文字將以最高的質量被顯示。坐標由以下公式計算左上(0,0)右上(文本寬度/圖片寬度,0)坐下(0,文本高度/圖片高度)右下(文本寬度/圖片寬度,文本高度/圖片高度)顯然,上面坐標中任何一項都是小于或者等于1的。四、生成模型坐標下的中心位置該過程依賴于物體的構造方式,一般的建模過程中,物體的頂點均位于專用的模型空間中。在模型空間中求解相應頂點是非常方便的。以長方體為例,全局標記參數(shù),如體積名稱,是標記在中心位置的。局部參數(shù)如邊長,一般標記在邊的中點上。長方體的中心位于長方形內部,如果以此點作為標記中心,那么標記多邊形可能全部或部分會被長方體遮擋,這依賴于長方體的尺寸和特定的渲染方式。本發(fā)明中,假設標記物體總是可見的,因此渲染時,先渲染幾何體本身,然后關閉深度檢測,最后渲染標記。這樣能有效保證標記相對宿主對象的可見性。步驟五中不再累述。本發(fā)明能夠適用于透視和正交投影兩種方式,如果是正交投影,本過程可被省去。 考慮到透視投影中,物體最終投影到屏幕上尺寸與其距離觀察點的距離有關。所以在該方式下,需要將步驟四中得到的中心點提前變換到視坐標下。然后考察視坐標下該點距離原點在ζ方向上的距離。取比例因子k =中心點到視點的距離/視景體前截面到視點的距離,在確定標記多邊形幾何尺寸時,需要乘以該比例因子k以彌補透視帶來的尺寸縮小的問題。五、渲染標記1、首先取出物體在模型坐標下的中點。2、構造矩陣平移矩陣mtl =物體的三維坐標系變換矩陣X物體平移矩陣。3、使用上述矩陣變換中點。4、乘以實體平移矩陣,然后再變換到觀察系下,作為標記對象的位置。這種方法與前面的敘述基本一致,只是將觀察矩陣與模型-世界矩陣分開計算, 由此獲得更大的靈活性。如果需要標記因物體的旋轉或縮放而改變,那么需要對該過程中的第二部分是作出相應的修改。采用了該發(fā)明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其由系統(tǒng)首先生成被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的標注參數(shù);再基于標注參數(shù)生成標注圖形數(shù)據(jù)信息;隨后基于標注圖形數(shù)據(jù)信息生成標記紋理多邊形數(shù)據(jù)信息;最后將標記紋理多邊形數(shù)據(jù)信息和被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形一同顯示,以實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示的控制。采用該發(fā)明的方法使標注與幾何圖形形成一個有機的整體,能靈活、動態(tài)地對三維場景進行標記,具有較高的通用性,且具有與場景相匹配的渲染效果,又能使用戶便于區(qū)分,從而提供更佳的用戶體驗。本發(fā)明的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法應用方式簡便,實現(xiàn)成本較為低廉,且應用范圍較為廣泛。在此說明書中,本發(fā)明已參照其特定的實施例作了描述。但是,很顯然仍可以作出各種修改和變換而不背離本發(fā)明的精神和范圍。因此,說明書和附圖應被認為是說明性的而非限制性的。
權利要求
1.一種計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的方法包括以下步驟(1)系統(tǒng)生成被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的標注參數(shù);(2)系統(tǒng)基于所述的標注參數(shù)生成標注圖形數(shù)據(jù)信息;(3)系統(tǒng)基于所述的標注圖形數(shù)據(jù)信息生成標記紋理多邊形數(shù)據(jù)信息;(4)系統(tǒng)將所述的標記紋理多邊形數(shù)據(jù)信息和被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形一同顯示。
2.根據(jù)權利要求1所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟(1)具體包括以下步驟(11)系統(tǒng)確定被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的數(shù)據(jù)類型;(12)系統(tǒng)根據(jù)所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的類型確定標注參數(shù)。
3.根據(jù)權利要求2所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的標注參數(shù)包括三維動態(tài)幾何圖形數(shù)據(jù)信息的邊長、角度、體積、表面積信息。
4.根據(jù)權利要求1所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟( 具體包括以下步驟(21)系統(tǒng)根據(jù)所述的標注參數(shù)確定標注數(shù)量;(22)系統(tǒng)根據(jù)所述的標注參數(shù)確定各標注的圖形尺寸信息。
5.根據(jù)權利要求4所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的標注參數(shù)包括整體參數(shù)類信息和局部參數(shù)類信息。
6.根據(jù)權利要求5所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟具體是指系統(tǒng)將一個整體參數(shù)類信息和多個局部參數(shù)類信息的個數(shù)之和確定為標注數(shù)量。
7.根據(jù)權利要求5所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟0 具體是指系統(tǒng)根據(jù)所述的標注參數(shù)的文本大小確定標注的圖形尺寸信息。
8.根據(jù)權利要求7所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的圖形尺寸信息的值為2的整數(shù)次冪,當所述的文本大小為連續(xù)兩個2的整數(shù)次冪的中間值時,圖形尺寸信息的值為所述的兩個2的整數(shù)次冪中的較大值。
9.根據(jù)權利要求1所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟C3)具體包括以下步驟(31)系統(tǒng)在被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息所基于的三維坐標系中確定標注圖形數(shù)據(jù)信息所依附的頂點坐標;(32)系統(tǒng)根據(jù)所述的標注圖形數(shù)據(jù)信息在三維坐標系中的頂點坐標生成該標注圖形信息基于視坐標系的標記紋理多邊形數(shù)據(jù)信息;(33)系統(tǒng)根據(jù)所述的標注參數(shù)對所述的標記紋理多邊形數(shù)據(jù)信息進行調整。
10.根據(jù)權利要求9所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟(3 具體包括以下步驟(32-1)系統(tǒng)根據(jù)所述的標注圖形數(shù)據(jù)信息在三維坐標系中的頂點坐標產生該標注圖形數(shù)據(jù)信息在系統(tǒng)的顯示器中的尺寸;(32-2)系統(tǒng)根據(jù)所述的標注圖形數(shù)據(jù)信息在系統(tǒng)顯示器中的尺寸產生該標注圖形在視坐標系中的標記紋理多邊形數(shù)據(jù)信息。
11.根據(jù)權利要求9所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟(3 具體包括以下步驟(33-1)系統(tǒng)將所述的標注參數(shù)的文本尺寸與所述的標記紋理多邊形數(shù)據(jù)信息所表示的實際尺寸之比作為該紋理多邊形數(shù)據(jù)信息的調整中值;(33-2)系統(tǒng)根據(jù)所述的調整中值對所述的標記紋理多邊形數(shù)據(jù)信息所表示的尺寸進行調整。
12.根據(jù)權利要求1所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟(4)具體包括以下步驟(41)系統(tǒng)確定所述的標記紋理多邊形數(shù)據(jù)信息在三維坐標系中的中心點,并將該中心點轉換到視坐標系中;(42)系統(tǒng)將被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的頂點坐標轉換到視坐標系中;(43)系統(tǒng)對視坐標系中的三維動態(tài)幾何圖形數(shù)據(jù)信息和標記紋理多邊形數(shù)據(jù)信息所表示的圖形進行渲染處理。
13.根據(jù)權利要求12所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟^幻具體是指系統(tǒng)采用背景透明顯示方式或文本鏤空顯示方式對所述的三維動態(tài)幾何圖形數(shù)據(jù)信息和標記紋理多邊形數(shù)據(jù)信息所表示的圖形進行渲染處理。
14.根據(jù)權利要求1至13中任一項所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的方法在步驟(4)之后還包括以下步驟(5)系統(tǒng)根據(jù)所述的被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的變化,對所述的標記紋理多邊形數(shù)據(jù)信息進行更新。
15.根據(jù)權利要求14所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的變化包括該三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形的平移、縮放和旋轉變化。
16.根據(jù)權利要求15所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟( 具體包括以下步驟(51)系統(tǒng)將該三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形的平移、縮放或旋轉變化均轉換為以三維動態(tài)幾何圖形數(shù)據(jù)信息的平移變化方法表示;(52)系統(tǒng)根據(jù)所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的平移變化重新確定所述的標記紋理多邊形數(shù)據(jù)信息所表示的圖形的中心點;(53)系統(tǒng)對所述的三維動態(tài)幾何圖形數(shù)據(jù)信息和標記紋理多邊形數(shù)據(jù)信息所表示的圖形進行渲染處理。
17.根據(jù)權利要求16所述的計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟(51)具體是指系統(tǒng)根據(jù)所述的三維動態(tài)幾何圖形數(shù)據(jù)信息的中點在三維坐標系中的位置變化構造平移矩陣,所述的平移矩陣mtl為平移矩陣mtl =物體的三維坐標系變換矩陣X物體平移矩陣。
18.根據(jù)權利要求17所述的三維動態(tài)幾何圖形數(shù)據(jù)信息計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其特征在于,所述的步驟(52)具體是指系統(tǒng)將標記紋理多邊形數(shù)據(jù)信息的在三維坐標系中的中心點乘以所述的平移矩陣mtl 作為新的中心點位置,并將該新的中心點轉換到視坐標系中。
全文摘要
本發(fā)明涉及一種計算機系統(tǒng)中實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示控制的方法,其首先生成被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息的標注參數(shù);再基于標注參數(shù)生成標注圖形數(shù)據(jù)信息;隨后基于標注圖形數(shù)據(jù)信息生成標記紋理多邊形數(shù)據(jù)信息;最后將標記紋理多邊形數(shù)據(jù)信息和被標注的三維動態(tài)幾何圖形數(shù)據(jù)信息所表示的圖形一同顯示,以實現(xiàn)三維動態(tài)幾何圖形數(shù)據(jù)信息標注顯示的控制。采用了本發(fā)明的方法,其能使標注與幾何圖形形成一個有機的整體,靈活、動態(tài)地對三維場景進行標記,具有較高的通用性,且具有與場景相匹配的渲染效果,又能使用戶便于區(qū)分,從而提供更佳的用戶體驗。本發(fā)明的方法應用方式簡便,實現(xiàn)成本較為低廉,且應用范圍較為廣泛。
文檔編號G06T13/20GK102163340SQ20111009695
公開日2011年8月24日 申請日期2011年4月18日 優(yōu)先權日2011年4月18日
發(fā)明者馮德謙, 劉二騰, 洪立業(yè), 洪穎莎, 貝毅君, 陳天威 申請人:寧波萬里電子科技有限公司