專(zhuān)利名稱(chēng):利用用戶(hù)定義的場(chǎng)所和窗口進(jìn)行有效再現(xiàn)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及計(jì)算機(jī)圖形系統(tǒng),并且更具體地涉及可提供復(fù)雜幾何模型的實(shí)時(shí)交互顯象的計(jì)算機(jī)圖形系統(tǒng)。
傳統(tǒng)的計(jì)算機(jī)圖形系統(tǒng)用于對(duì)三維物體的景象(scene)建模并在例如陰極射線管或液晶顯示器的二維顯示設(shè)備上重現(xiàn)景象進(jìn)行顯示。典型地,每個(gè)三維景象物體各用近似于物體形狀的多個(gè)多邊形(或基元)表示。定義物體的基元典型地是由局部坐標(biāo)系統(tǒng)中的坐標(biāo)定義的。例如,一種可用于定義物體的基元是三角形,它可由三個(gè)頂點(diǎn)在局部坐標(biāo)系統(tǒng)中的坐標(biāo)定義。
景象的再現(xiàn)常規(guī)地分為二個(gè)階段,幾何處理和光柵化。幾何處理通常包括模型建立變換、照明計(jì)算、視見(jiàn)變換、剪取操作及視點(diǎn)映象。模型建立變換把基元從局部坐標(biāo)系統(tǒng)變換到全局坐標(biāo)系統(tǒng)。照明計(jì)算計(jì)算不同位置的照明度模型一度對(duì)每個(gè)基元取等明暗、一度對(duì)每個(gè)頂點(diǎn)取Gouraud明暗,或者對(duì)每個(gè)象素取Phong明暗。視見(jiàn)變換把基元從全局坐標(biāo)系變換到三維屏幕坐標(biāo)系統(tǒng)(有時(shí)稱(chēng)為規(guī)格化投影坐標(biāo)系統(tǒng))。剪取操作決定取景截頭體中的各基元(或者基元的一部分)。而視點(diǎn)映象把剪取后的基元的坐標(biāo)系變換到規(guī)格化設(shè)備坐標(biāo)系統(tǒng)(有時(shí)稱(chēng)為二維設(shè)備坐標(biāo)系統(tǒng))。
光柵化是一種把幾何處理期間生成的剪取后的基元的說(shuō)明變換成用于顯示的象素的處理。如
圖1A中所示,一種典型的基元是三角形T1。別的表面基元慣例地在光柵化前變換為一個(gè)或多個(gè)三角形。從而,常規(guī)光柵化處理只需要對(duì)待三角形。三角形T1是用它的每個(gè)頂點(diǎn)的(x,y,z)坐標(biāo)表示的。頂點(diǎn)的(x,y)坐標(biāo)說(shuō)明其在顯示平面中的位置。z坐標(biāo)說(shuō)明頂點(diǎn)離三維景象中選定的視點(diǎn)多遠(yuǎn)。光柵化典型成分解為三項(xiàng)任務(wù)掃描變換、明暗和可見(jiàn)性判定。
掃描變換利用每個(gè)三角形的頂點(diǎn)的(x,y)坐標(biāo)計(jì)算該三角形所覆蓋的象素集S。
明暗處理計(jì)算各個(gè)三角形覆蓋的象素集S的彩色。存在許多計(jì)算彩色的方法,其中有些方法涉及到密集性計(jì)算技術(shù)例如紋理變換。明暗處理典型地采用上面對(duì)幾何處理說(shuō)明時(shí)提到的照明計(jì)算。
可見(jiàn)性判定利用每個(gè)三角形的z坐標(biāo)計(jì)算該三角形可見(jiàn)的象素集Sv(S的一個(gè)子集)。如果集S中的任何象素被前面已光柵化的它們的z值更接近選定視點(diǎn)的三角形所遮蓋,集Sv將不同于集S。從而,對(duì)于位于由所有前面已處理過(guò)的三角形所描述的景象中的每個(gè)三角形,如果一個(gè)象素位于集Sv中它是“可見(jiàn)的”,但如果它位于集S中但不位于Sv中則是“隱蔽的”。另外,如果集Sv和集S相同,則三角形是“全部可見(jiàn)的”;如果集Sv不和集S相等并且集Sv不是空的,則是“部分隱蔽的”;或者如果集Sv是空的,則三角形是“全部隱蔽的”。例如,圖1B示出二個(gè)三角形T1和T2,其中三角形T1被三角形T2部分地隱蔽。可見(jiàn)性判定傳統(tǒng)地利用Z緩沖器技術(shù)實(shí)現(xiàn)。Z緩沖器為每個(gè)象素存儲(chǔ)一個(gè)項(xiàng)目,該項(xiàng)目表示該給定象素處可見(jiàn)基元的z值。被一給定三角形遮蓋的一組象素的z值(Znew)是通過(guò)插值法確定的。對(duì)于該組中的每個(gè)象素,給定象素處的Znew和存儲(chǔ)在Z緩沖區(qū)中作為對(duì)應(yīng)該給定象素的一個(gè)項(xiàng)目的z值(Zold)進(jìn)入比較,并且根據(jù)比較操作的結(jié)果用Znew更新項(xiàng)目Zold。
通過(guò)把可見(jiàn)象素集Sv的彩色寫(xiě)入到供顯示的圖象緩沖器完成光柵化。
隨著景象變得越來(lái)越復(fù)雜,傳統(tǒng)的再現(xiàn)技術(shù)對(duì)于許多圖形系統(tǒng)是計(jì)算過(guò)于密集的并且造成性能的下降。已經(jīng)提出了適用于復(fù)雜景象的替代再現(xiàn)技術(shù)。例如,授于Mulmuley標(biāo)題為“三維顯示器中隱線及表面消除的方法”的美國(guó)5,086,496號(hào)專(zhuān)利利用視見(jiàn)窗口(viewing window)的條狀分區(qū)(它們由和至少一個(gè)圖象頂點(diǎn)相交的邊界定義)及利用指向給定部分中可見(jiàn)表面的可見(jiàn)性指針進(jìn)行表面的可見(jiàn)性判定。
在另一個(gè)例子里,Green等的“分層Z緩沖器可見(jiàn)性”文章(Proc.ACM SIGGRAPH93,PP.231-238,1993)中說(shuō)明用二種分層數(shù)據(jù)結(jié)構(gòu)的組合,即物體空間的八叉樹(shù)和圖象空間的Z錐,加速掃描變換。
另外,Teller等在“交互式圖形的可見(jiàn)性處理”(Proc.ACM SIG-GRAPH 91,PP.61-69,1991)中說(shuō)明一種可見(jiàn)性預(yù)處理階段采用的算法,該算法把一個(gè)模型劃分成為多個(gè)單元(cell)并且生成單元到單元的可見(jiàn)性信息(對(duì)于給定單元其表示從該給定單元中的至少一個(gè)點(diǎn)上部分可見(jiàn)或全部可見(jiàn)的單元集)。在交互式預(yù)排(walk through)階段,具有已知位置及視見(jiàn)截頭體的觀察器通過(guò)該模型。在各個(gè)幀中,辨別含有該觀察器的單元,并從存儲(chǔ)器檢索潛在的可見(jiàn)單元的內(nèi)容(這是從預(yù)處理階段中生成的單元到單元的可見(jiàn)性信息中導(dǎo)出的)。通過(guò)從觀察器的視見(jiàn)截頭體中進(jìn)行挑選以產(chǎn)生眼睛到單元的信息(其表示在規(guī)定的視見(jiàn)截頭體中觀察器部分或全部可見(jiàn)的單元集)進(jìn)一步減小潛在的可見(jiàn)單元集。由眼睛到單元的信息辨別出的剩下的可見(jiàn)單元的內(nèi)容接著送到圖形流水線,以供隱蔽表面消除及再現(xiàn)。Teller等的“用于照明計(jì)算的全局可見(jiàn)性算法”(Proc.ACMSIGGRAPH93,PP.239-246,1993)中把這些可見(jiàn)性預(yù)處理算法應(yīng)用到輻射通量密度計(jì)算上。
盡管這些替代的技術(shù)是用來(lái)加快光柵化階段中的可見(jiàn)性判定的,但這些技術(shù)是不可改變的并且在大多數(shù)情況下對(duì)再現(xiàn)處理增添密集的計(jì)算任務(wù)從而壓到了它們的好處。從而,在現(xiàn)有技術(shù)中需要提供靈活的再現(xiàn)技術(shù),其能適應(yīng)由當(dāng)今的三維模型及景象中的各種復(fù)雜性及特征規(guī)定的要求。
現(xiàn)有技術(shù)中的上述問(wèn)題以及相關(guān)問(wèn)題是通過(guò)本發(fā)明的原理解決的,該原理利用用戶(hù)定義的場(chǎng)所(room)有效地再現(xiàn)并且提供一種允許用戶(hù)定義一個(gè)或多個(gè)場(chǎng)所的機(jī)制。場(chǎng)所是空間中的一個(gè)區(qū)域,例如立體單元。存儲(chǔ)和帶有某些物體的場(chǎng)所相關(guān)的數(shù)據(jù),當(dāng)攝象機(jī)位于該場(chǎng)所內(nèi)時(shí)這些物體是潛在可見(jiàn)的(或者潛在不可見(jiàn)的)。物體表示景象,從而場(chǎng)所不同于物體。一個(gè)預(yù)處理步驟檢查攝象機(jī)是否在一個(gè)場(chǎng)所內(nèi),若在時(shí)則利用存儲(chǔ)的數(shù)據(jù)判定從該場(chǎng)所內(nèi)該景象的這些物體是潛在可見(jiàn)的(或者潛在不可見(jiàn)的)。只有那些確定成從該場(chǎng)所內(nèi)潛在可見(jiàn)的物體接著才被再現(xiàn)以供顯示。
另外,可以存儲(chǔ)和場(chǎng)所內(nèi)一個(gè)或多個(gè)窗口相關(guān)的數(shù)據(jù)。窗口是一個(gè)幾何圖形,其根據(jù)攝象機(jī)相對(duì)于該窗口的位置、方位和視場(chǎng)定義可見(jiàn)/不可見(jiàn)區(qū)域。最好把那些不在與該場(chǎng)所有關(guān)的物體集之內(nèi)的但位于由該窗口定義的可見(jiàn)區(qū)域內(nèi)的物體增添到供顯示的再現(xiàn)物體組中。
圖1A圖示三角形T1的光柵化;圖1B圖示三角形TI和T2的光柵化,其中三角形T1部分地由三角形T2隱蔽;圖2是圖形工作站的功能方塊圖;圖3是圖2的圖形工作站的圖形子系統(tǒng)的功能方塊圖;圖4(A)表示根據(jù)本發(fā)明的一個(gè)場(chǎng)所;圖4(B)表示將一場(chǎng)所和一組物體關(guān)聯(lián)起來(lái)的數(shù)據(jù)結(jié)構(gòu);圖5是一個(gè)流程圖,表示按照本發(fā)明對(duì)場(chǎng)所的預(yù)處理;圖6(A)表示根據(jù)本發(fā)明一個(gè)帶有一個(gè)窗口的場(chǎng)所;圖6(B)在二維空間中表示視見(jiàn)截頭體和圖6(A)的窗口的相交;圖7是一個(gè)流程圖,表示按照本發(fā)明對(duì)帶有相關(guān)窗口的場(chǎng)所的預(yù)處理;圖8(A)和8(B)是一個(gè)流程圖表示根據(jù)本發(fā)明圖形系統(tǒng)利用一個(gè)或多個(gè)場(chǎng)所及相關(guān)的預(yù)處理和可見(jiàn)性集的操作圖9(A)是非凹場(chǎng)所R及相關(guān)窗口A、B、C、D的剖視圖;以及圖9(B)示意表示代表窗口A、B、C、D和場(chǎng)所R的關(guān)系的分層樹(shù)形結(jié)構(gòu),其用于指導(dǎo)和場(chǎng)所R的各窗口相關(guān)的挑選操作從而計(jì)算對(duì)應(yīng)的窗口的作用。
如圖2中所示,常規(guī)圖形系統(tǒng)100包括一個(gè)經(jīng)系統(tǒng)總線106和系統(tǒng)存儲(chǔ)器104連接的主處理機(jī)102。系統(tǒng)存儲(chǔ)器104包括存儲(chǔ)著定義一個(gè)或多個(gè)三維模型中所含有的物體的圖形數(shù)據(jù)的隨機(jī)存取存儲(chǔ)器(RAM)。定義各個(gè)物體的圖形數(shù)據(jù)包括基元在局部坐標(biāo)系統(tǒng)里的坐標(biāo)和基元的屬性(例如顏色、反射率、紋理)?;菐缀螌?shí)體,如多邊形、線或表面。典型地,基元是用三個(gè)頂點(diǎn)在局部坐標(biāo)系統(tǒng)中的坐標(biāo)定義的三角形。在這種情況下,系統(tǒng)存儲(chǔ)器104包括一個(gè)三角形頂點(diǎn)的有序表,這些三角形定義組成三維景象的各物體的各表面。另外,系統(tǒng)存儲(chǔ)器104可存儲(chǔ)一個(gè)三角形標(biāo)識(shí)符表,標(biāo)識(shí)符對(duì)應(yīng)各個(gè)三角形及變換矩陣。變換矩陣用于把景象的各物體從局部坐標(biāo)系統(tǒng)變換到全局坐標(biāo)系統(tǒng),并且從而規(guī)定三角形在景象中的位置、定向及標(biāo)度。
輸入/輸出(I/O)設(shè)備108經(jīng)系統(tǒng)總線108和主處理機(jī)102接口。I/O設(shè)備可包括用于正文入的鍵盤(pán)、模板或觸板,指點(diǎn)器如供用戶(hù)輸入的鼠標(biāo)器、跟蹤球、空間球(Spaceball)或光筆,以及用于存儲(chǔ)圖形數(shù)據(jù)及應(yīng)用軟件的非易失性存儲(chǔ)器如硬盤(pán)或CD-ROM。如常規(guī)那樣,圖形數(shù)據(jù)和應(yīng)用軟件從非易失性存儲(chǔ)器裝到系統(tǒng)存儲(chǔ)器104中以供系統(tǒng)處理機(jī)102訪問(wèn)。
應(yīng)用軟件典型地包括一個(gè)或多個(gè)用戶(hù)接口,以對(duì)用戶(hù)提供更新視點(diǎn)(或攝象機(jī))并且從而瀏覽景象的能力。另外,應(yīng)用軟件典型地包括一個(gè)或多個(gè)為用戶(hù)提供實(shí)現(xiàn)動(dòng)畫(huà)能力的用戶(hù)接口,動(dòng)畫(huà)是從一系列預(yù)先定義的視點(diǎn)看過(guò)去的視象。在更新視點(diǎn)時(shí),應(yīng)用軟件典型地利用存儲(chǔ)在系統(tǒng)存儲(chǔ)器104中的變換矩陣把景象的基元從局部坐標(biāo)系統(tǒng)變換到全局坐標(biāo)系統(tǒng)。在主處理機(jī)102上執(zhí)行的應(yīng)用軟件接著把再現(xiàn)景象的圖形命令提供給經(jīng)過(guò)系統(tǒng)總線106和系統(tǒng)存儲(chǔ)器104接口的圖形子系統(tǒng)110。
通常,圖形子系統(tǒng)110根據(jù)從主處理機(jī)102傳送到圖形子系統(tǒng)110的圖形命令進(jìn)行操作,把存儲(chǔ)在系統(tǒng)存儲(chǔ)器104中供顯示的圖形數(shù)據(jù)再現(xiàn)到顯示設(shè)備112的顯示區(qū)中。顯示設(shè)備112可使用光柵掃描技術(shù)或液晶顯示技術(shù)顯示象素。圖形子系統(tǒng)110生成的象素?cái)?shù)據(jù)是數(shù)字形式的。典型地,顯示設(shè)備112需要模擬形式的象素?cái)?shù)據(jù)。在這種情況下,如圖3中所示,可以在圖形子系統(tǒng)110和顯示設(shè)備112之間設(shè)置一個(gè)數(shù)模轉(zhuǎn)換器114把象素?cái)?shù)據(jù)從數(shù)字形式轉(zhuǎn)換成模擬形式。
圖形命令典型地包括一序列數(shù)據(jù)塊,它們包括或指向圖形數(shù)據(jù)(例如,一個(gè)或多個(gè)基元的坐標(biāo)和屬性),圖形數(shù)據(jù)定義景象的基元、相關(guān)的變換矩陣以及任何其它圖形子系統(tǒng)110需要的必要信息。和圖形命令相關(guān)的基元典型地是由基元的各個(gè)頂點(diǎn)的幾何坐標(biāo)值或者齊次坐標(biāo)值定義的。另外,圖形命令典型地包括或指向?yàn)楦鱾€(gè)基元的頂點(diǎn)定義法線向量。這些坐標(biāo)值和法線向量典型地是在全局坐標(biāo)系統(tǒng)中規(guī)定的。
另外,把景象基元從局部坐標(biāo)系統(tǒng)到全局坐標(biāo)系統(tǒng)的變換可以不由在主處理機(jī)上執(zhí)行的應(yīng)用程序進(jìn)行,而由圖形子系統(tǒng)進(jìn)行。在該情況下,提供給圖形子系統(tǒng)的圖形命令包括或指向存儲(chǔ)在系統(tǒng)存儲(chǔ)器104里的變換矩陣,并且圖形子系統(tǒng)利用這些變換矩陣把景象的基元從局部坐標(biāo)系統(tǒng)變換到全局坐標(biāo)系統(tǒng)。
盡管把圖形子系統(tǒng)110示為圖形工作站的一部分,但是本發(fā)明的范圍在此上是不受限制的。此外,如下面所說(shuō)明的本發(fā)明的圖形子系統(tǒng)可以用例如門(mén)陣列或芯片組的硬件實(shí)現(xiàn),該硬件,若需要,包括至少一個(gè)可編程定序器、存儲(chǔ)器、至少一個(gè)整數(shù)處理器和至少一個(gè)浮點(diǎn)處理器。另外,圖形子系統(tǒng)可以包括如美國(guó)4,876,644號(hào)專(zhuān)利中所示的并行和/或流水線體系結(jié)構(gòu),該專(zhuān)利普遍地轉(zhuǎn)讓給本發(fā)明的受讓人并在整體上作為本文的參考資料。
作為一種選擇方案,如面所述的圖形子系統(tǒng)110(或其一部分)可以用連同一個(gè)處理機(jī)以軟件實(shí)現(xiàn)。該處理機(jī)可以是一個(gè)常規(guī)的通用處理機(jī)128,或者一個(gè)和主處理機(jī)128集成的協(xié)處理機(jī)。
如圖3中所示,圖形子系統(tǒng)110包括一個(gè)監(jiān)督圖形子系統(tǒng)110的運(yùn)行的控制部件200。一旦接收再現(xiàn)景象的圖形命令,控制部件200把和該圖形命令相關(guān)的圖形數(shù)據(jù)傳送到幾何引擎202。幾何引擎202把和該圖形命令相關(guān)的圖形數(shù)據(jù)從全局坐標(biāo)系統(tǒng)變換到三維屏幕坐標(biāo)系統(tǒng)(有時(shí)稱(chēng)為規(guī)格化投影坐標(biāo)系統(tǒng)),對(duì)照預(yù)定的視見(jiàn)約束體剪取圖形數(shù)據(jù),并且把剪取后的數(shù)據(jù)從三維屏幕坐標(biāo)系統(tǒng)變換到規(guī)格化設(shè)備坐標(biāo)系統(tǒng)(有時(shí)稱(chēng)為二維設(shè)備坐標(biāo)系統(tǒng)或屏幕坐標(biāo)系統(tǒng)。另外,取決于所施加的明暗算法,在不同的位置(即,基元的頂點(diǎn)和/或給定基元遮蓋的象素)計(jì)算照明模型。然后把由規(guī)格化設(shè)備坐標(biāo)系統(tǒng)的坐標(biāo)軸定義的變換后和剪取后的圖形數(shù)據(jù)傳送到光柵化級(jí)212。
光柵化級(jí)進(jìn)行掃描變換以把變換后的基元轉(zhuǎn)換為象素并且進(jìn)行明暗計(jì)算和可見(jiàn)性判定,通常把每個(gè)象素上的每個(gè)基元的影響存儲(chǔ)在至少一個(gè)幀緩沖器216和一個(gè)Z緩沖器214里。Z緩沖器214最好具有足夠的存儲(chǔ)容量以為顯示器112的每個(gè)象素存儲(chǔ)深度值。常規(guī)地,對(duì)每個(gè)象素存儲(chǔ)一個(gè)24比特位的整數(shù)深度值。幀緩沖器216最好具有足夠的存儲(chǔ)容量,為顯示器112的每個(gè)象素存儲(chǔ)彩色數(shù)據(jù)。常規(guī)地,彩色數(shù)據(jù)包括三個(gè)8比特位的整數(shù),分別為每個(gè)象素表示紅、綠、蘭(r,g,b)顏色值。周期性地從幀緩沖器216輸出象素?cái)?shù)據(jù)供在顯示設(shè)備112上顯示。幾何引擎202和光柵化級(jí)212可按不同的體系結(jié)構(gòu)組織。在Foley等的“Computer GraphicsPrinciples andPractice”中,pp.855-920(2nd Ed.1990)可找到對(duì)這些體系結(jié)構(gòu)的更詳細(xì)討論,該書(shū)整體作為本文的參考資料。
根據(jù)本發(fā)明,提供一種允許用戶(hù)定義一個(gè)或多個(gè)場(chǎng)所的機(jī)制。場(chǎng)所是空間的一個(gè)區(qū)域,例如一個(gè)立體單元,它和某些當(dāng)攝象機(jī)位于該場(chǎng)所中潛在可見(jiàn)的(或者潛在不可見(jiàn)的)的物體相關(guān)。場(chǎng)所不同于物體,物體表示景象。一個(gè)物體是基元(例如三角形)的集合,這些基元對(duì)應(yīng)景象中一個(gè)有意義的子集(例如房間中的一件家俱)。一個(gè)預(yù)處理步驟檢查攝象機(jī)是否在一個(gè)場(chǎng)所中,如果在則判定從該場(chǎng)所內(nèi)潛在可見(jiàn)的(或潛在不可見(jiàn)的)景象的物體。只有那些從該場(chǎng)所內(nèi)潛在可見(jiàn)的物體才被再現(xiàn)以供顯示。
更具體地,本發(fā)明的機(jī)制包括一個(gè)允許用戶(hù)定義一個(gè)或多個(gè)場(chǎng)所的用戶(hù)接口。場(chǎng)所是空間中的一個(gè)區(qū)域,當(dāng)攝象機(jī)位于該場(chǎng)所內(nèi)時(shí)它和一組潛在可見(jiàn)的(或者潛在不可見(jiàn)的)的物體相關(guān)。場(chǎng)所可以是二維的(例如一個(gè)矩形)或者可以是三維的(例如一個(gè)立體單元)??梢允褂萌魏卧试S用戶(hù)規(guī)定(或者繪出)空間中的一個(gè)區(qū)域以及相關(guān)物體(或物體的一部分)的用戶(hù)接口。生成表示該場(chǎng)所以及當(dāng)攝象機(jī)位于該場(chǎng)所內(nèi)時(shí)潛在可見(jiàn)的(或者潛在不可見(jiàn)的)物體集并且最好存儲(chǔ)在系統(tǒng)存儲(chǔ)器104中,請(qǐng)注意當(dāng)攝象機(jī)位于場(chǎng)所內(nèi)時(shí)辨別為潛在可見(jiàn)的物體可以不位于該場(chǎng)所內(nèi)。場(chǎng)所可在在模型坐標(biāo)系統(tǒng)中定義,或者可以在全局坐標(biāo)系統(tǒng)中定義。
另外,用戶(hù)接口可允許用戶(hù)控制是否要和景象中的各物體一起顯示各場(chǎng)所。為觀察各場(chǎng)所,表示定義各場(chǎng)所的幾何條件的數(shù)據(jù)綜合成提供給圖形子系統(tǒng)的圖形命令。在這種情況下,場(chǎng)所具有把場(chǎng)所和別的物體區(qū)分看來(lái)的性能。例如,各個(gè)場(chǎng)所可用一個(gè)線框模型表示,可具有不同的彩色或不同的斷面線,或者可含有場(chǎng)所墻壁后面的景象的紋理。
為了進(jìn)一步解釋場(chǎng)所的概念,考慮圖4(A)中所示的一個(gè)例子,其中場(chǎng)所A是由八個(gè)點(diǎn)P1,P2,P3,P4,P5,P6,P7,P8定義的一個(gè)立體單元并且其中各點(diǎn)P1,P2,P3,P4,P5,P6,P7,P8是用全局坐標(biāo)系統(tǒng)中的幾何坐標(biāo)表示的。景象包括,例如,該場(chǎng)所內(nèi)可見(jiàn)的三個(gè)物體梁401,管403和泵405。如圖4(B)中所示,生成當(dāng)攝象機(jī)位于場(chǎng)所A中表示潛在可見(jiàn)的(或潛在不可見(jiàn)的)物體集的數(shù)據(jù)并存儲(chǔ)在系統(tǒng)存儲(chǔ)器104中。該數(shù)據(jù)最好包括一個(gè)包含著和給定的場(chǎng)所A相關(guān)的項(xiàng)目的數(shù)組。每個(gè)項(xiàng)目最好包括標(biāo)志和該給定項(xiàng)目相關(guān)的場(chǎng)所中可見(jiàn)的物體的標(biāo)記。最好如所示數(shù)組的各項(xiàng)目和一給定場(chǎng)所之間的關(guān)聯(lián)是用鏈接表構(gòu)成的。
如圖5的流程圖所示,通過(guò)在步驟503檢查攝象機(jī)是否在場(chǎng)所A中開(kāi)始預(yù)處理。如果在,在步驟505繼續(xù)操作,其中從系統(tǒng)存儲(chǔ)器104讀出當(dāng)攝象機(jī)位于場(chǎng)所A內(nèi)時(shí)表示潛在可見(jiàn)(或潛在不可見(jiàn))的物體(或其一部分)集的數(shù)據(jù)。在步驟507中,由步驟505中從存儲(chǔ)器104讀出的數(shù)據(jù)所指示,生成圖形命令以便僅再現(xiàn)從場(chǎng)所A內(nèi)潛在可見(jiàn)的那些物體。在步驟509,把步驟507中生成的圖形命令提供給圖形子系統(tǒng),以再現(xiàn)用于顯示的物體。
如果攝象機(jī)不在場(chǎng)所A中,對(duì)于場(chǎng)所A結(jié)束預(yù)處理步驟??蓪?duì)用戶(hù)規(guī)定的每個(gè)場(chǎng)所重復(fù)上述的相同步驟。如果攝象機(jī)位于多于一個(gè)的場(chǎng)所內(nèi),和其中之一的場(chǎng)所相關(guān)的各物體(或者攝象機(jī)位于的每個(gè)場(chǎng)所相關(guān)的各物體)可再現(xiàn)以供顯示。
在本發(fā)明的另一種實(shí)施方式中,上面所說(shuō)明的場(chǎng)所可以具有一個(gè)或多個(gè)相關(guān)聯(lián)的窗口。在該實(shí)施方式中,窗口是一個(gè)和一給定場(chǎng)所相關(guān)的幾何圖形例如矩形,它定義全局坐標(biāo)系統(tǒng)中的可見(jiàn)/不可見(jiàn)區(qū)域,這些區(qū)域取決于攝象機(jī)相對(duì)該窗口的位置、定向及視場(chǎng)。如果攝象機(jī)位于和該窗口相關(guān)的場(chǎng)所之外,該場(chǎng)所和其關(guān)聯(lián)的窗口(組)對(duì)該景象內(nèi)的各物體的可見(jiàn)性不起作用。但是,如果攝象機(jī)位于該場(chǎng)所內(nèi),由該窗口定義的可見(jiàn)/不可見(jiàn)區(qū)域可以對(duì)各物體的可見(jiàn)性起作用。最好窗口的位置用于確定和該場(chǎng)所關(guān)聯(lián)的物體集之外的物體的可見(jiàn)性。表示一個(gè)窗口的數(shù)據(jù)最好用坐標(biāo)組表示,例如在全局坐標(biāo)系統(tǒng)中(或模型坐標(biāo)系統(tǒng)中)該窗口的各角的坐標(biāo),并且存儲(chǔ)在系統(tǒng)存儲(chǔ)器104中。場(chǎng)所和其窗口之間的關(guān)聯(lián)可用分層樹(shù)形數(shù)據(jù)結(jié)構(gòu)表示,如后面所說(shuō)明這對(duì)非凸場(chǎng)所是有好處的。
圖6(A)和(B)說(shuō)明當(dāng)攝象機(jī)位于和一個(gè)窗口相關(guān)的場(chǎng)所內(nèi)的情況下由該窗口定義的可見(jiàn)/不可見(jiàn)區(qū)域。例如,如圖6(A)中所示,一個(gè)立體場(chǎng)所在其由點(diǎn)P3,P4,P7,P8定義的該單元的側(cè)面上具有一個(gè)矩形窗口,攝象機(jī)的位置、方向和視場(chǎng)定義一個(gè)視見(jiàn)截頭體。如所示,該攝象機(jī)位于場(chǎng)所之內(nèi);從而由該窗口定義的可見(jiàn)/不可見(jiàn)區(qū)域最好對(duì)和該場(chǎng)所相關(guān)的物體集之外的各物體的可見(jiàn)性起作用。若攝象機(jī)在和該窗口關(guān)聯(lián)的場(chǎng)所的對(duì)面,該場(chǎng)所及其窗口不對(duì)景象之內(nèi)的物體的可見(jiàn)性起作用。
如圖6(B)中所示,視見(jiàn)截頭體在窗口上的投影定義一個(gè)在其上該截頭體和該窗口相交的斷面線部分A和一個(gè)在其上該截頭體和該窗口不相交的第二部分B。由圖6(A)的窗口定義的可見(jiàn)區(qū)域是投影到斷面線部分A上的視見(jiàn)截頭體的部分。類(lèi)似地,由圖6(A)的窗口定義的不可見(jiàn)區(qū)域是投影到第二部分B的視見(jiàn)截頭體的部分。通過(guò)該窗口的可見(jiàn)區(qū)域A可以觀察那些在和該給定場(chǎng)所相關(guān)的物體集之外的物體。
和場(chǎng)所及它們相關(guān)的窗口有關(guān)的預(yù)處理步驟檢查攝象機(jī)是否在給定的場(chǎng)所內(nèi)。如果攝象機(jī)位于該給定的場(chǎng)所內(nèi),辨別和該給定場(chǎng)所關(guān)聯(lián)的物體集中的物體(或物體的一部分)。另外,若攝象機(jī)位于該給定的場(chǎng)所內(nèi),辨別滿足下列特征的物體(或物體的一部分)(1)在和給定場(chǎng)所相關(guān)的物體集之外;并
(2)在由給定場(chǎng)所相關(guān)的窗口(組)定義的可見(jiàn)區(qū)域之內(nèi)。然后把辨別出來(lái)的各物體(或物體的一部分)送到再現(xiàn)物體以便顯示的圖形子系統(tǒng)。
如圖7中所示,預(yù)處理步驟最好從步驟703開(kāi)始,該步驟按深度分類(lèi)場(chǎng)所。接著,在步驟705,最好去掉由更靠近攝象機(jī)位置的一個(gè)或多個(gè)場(chǎng)所遮蔽(或部分遮蔽)的場(chǎng)所。這可以通過(guò)從離攝象機(jī)位置第二個(gè)最遠(yuǎn)的場(chǎng)所開(kāi)始并繼續(xù)循環(huán)直到離攝象機(jī)最近的場(chǎng)所被處理按如下來(lái)實(shí)現(xiàn)如果當(dāng)前的場(chǎng)所按照預(yù)定的準(zhǔn)則遮蔽(或部分遮蔽)該當(dāng)前場(chǎng)所后面的場(chǎng)所,則去掉被隱蔽的場(chǎng)所(或它的一部分)。對(duì)步驟705中未去掉的各個(gè)場(chǎng)所(或它的一部分)接著執(zhí)行步驟707至713。最好按從最后面的場(chǎng)所(離攝象機(jī)最遠(yuǎn)的場(chǎng)所)到最前面場(chǎng)所(離攝象機(jī)最近的場(chǎng)所)的順序?qū)γ總€(gè)未在步驟705中去掉的場(chǎng)所執(zhí)行步驟707至713。
在步驟707,判定攝象機(jī)是否在該場(chǎng)所內(nèi)。若在步驟707確定攝象機(jī)位于該場(chǎng)所內(nèi),對(duì)和該場(chǎng)所相關(guān)的每個(gè)窗口繼續(xù)從步驟709至步驟717的操作。若在步驟707確定攝象機(jī)位于該場(chǎng)所之外,預(yù)處理步驟繼續(xù)到步驟719。
在步驟709,把和該場(chǎng)所相關(guān)的物體集內(nèi)的所有物體標(biāo)記為潛在可見(jiàn)的。在步驟711,把和該場(chǎng)所相關(guān)的物體集之外的所有物體標(biāo)記為隱蔽的。
在步驟713,判定視見(jiàn)截頭體是否和該場(chǎng)所的窗口相交。這是一個(gè)可利用幾何建模中周知的技術(shù)進(jìn)行的幾何測(cè)試,例如在C.M.Hoffman著的“Geometric and Solid Modeling”(Morgan KaufmannPublishers,San Mateo,California,1989,PP.67-109)中說(shuō)明的各種技術(shù),該書(shū)整體上作為本文的參考資料。若在713確定視見(jiàn)截頭體和該場(chǎng)所的窗口相交,操作繼續(xù)到步驟715;反之預(yù)處理步驟繼續(xù)到步驟719。
在步驟715,確定該窗口定義的可見(jiàn)區(qū)域,然后操作繼續(xù)到步驟717。窗口的可見(jiàn)區(qū)域是從窗口和視見(jiàn)截頭體的相交確定的。最好把可見(jiàn)區(qū)域表示成平面組的適當(dāng)布爾組合。在Requicha的“剛性實(shí)體的表達(dá)理論、方法和系統(tǒng)”(ACM Computer Surveys,Vol.12,No.4,1980,PP.437-464)一文中敘述導(dǎo)出這種平面組的布爾組合的較詳細(xì)討論,從而該文整體上是本文的參考資料。當(dāng)可見(jiàn)區(qū)域具有復(fù)雜的幾何形狀的情況下,對(duì)該可見(jiàn)區(qū)域的表示可能用較少?gòu)?fù)雜的幾何形狀近似來(lái)代替。
在步驟717,執(zhí)行挑選操作以辨別位于該窗口定義的可見(jiàn)區(qū)域內(nèi)的那些物體(或其中的部分),并且把辨別出來(lái)的物體(或物體的一部分)標(biāo)記為潛在可見(jiàn)的。這可以通過(guò)把和辨別出的物體(或物體的一部分)的一個(gè)標(biāo)識(shí)符置成預(yù)定值以指示該物體(或一部分)是潛在可見(jiàn)的來(lái)實(shí)現(xiàn)。最好對(duì)標(biāo)記為隱蔽的(即,在和該場(chǎng)所相關(guān)的物體集之外的物體)的那些物體(或物體的一部分)執(zhí)行步驟717的挑選操作。然后操作繼續(xù)到步驟719。
在步驟719判定是否處理了所有的場(chǎng)所。若是,操作繼續(xù)到步驟721;反之操作返回到步驟707,處理下一個(gè)未處理的場(chǎng)所。
在步驟721,向圖形系統(tǒng)傳送圖形命令以再現(xiàn)全部已標(biāo)記為潛在可見(jiàn)的物體(或物體的一部分),并結(jié)束預(yù)處理步驟。一旦接收到預(yù)處理期間生成的圖形命令,圖形子系統(tǒng)再現(xiàn)潛在可見(jiàn)物體(或物體的一部分)供在顯示設(shè)備上顯示。
場(chǎng)所可能是非凸的。例如,圖9(A)是一個(gè)帶有四個(gè)窗口A、B、C、D的非凸場(chǎng)所R的剖面。注意在該情況中多于一個(gè)的窗口可影響位于該場(chǎng)所的外面的物體的可見(jiàn)性。例如,如果視點(diǎn)是由向量X給出的,則如所示影響該場(chǎng)所外部的物體的可見(jiàn)性的窗口包括窗口B、C、D。最好采用如圖9(B)中所示的分層數(shù)據(jù)結(jié)構(gòu)來(lái)表示窗口A、B、C、D和場(chǎng)所R的關(guān)系和指導(dǎo)和場(chǎng)所R的各窗口相關(guān)的挑選操作從而計(jì)算適當(dāng)窗口組的作用。更具體地,不按上面所說(shuō)明的那樣為每個(gè)場(chǎng)所執(zhí)行步驟709至717。替代地,遍歷樹(shù)的層1各節(jié)點(diǎn)的各窗口以辨別由視見(jiàn)截頭體相交的標(biāo)記為WCI的最近的窗口(相對(duì)于視點(diǎn)的位置)。接著對(duì)該最近的窗口WCI執(zhí)行步驟709、715和717。這些步驟使位于窗口WC1所定義的可見(jiàn)區(qū)域中的那些物體(或物體的一部分)標(biāo)記為潛在可見(jiàn)的。在圖9(A)中所示的例子中,最近的層1窗口WC1是窗口B。然后,如果存在作為WCI節(jié)點(diǎn)的子女的層2節(jié)點(diǎn)的窗口,則遍歷層2節(jié)點(diǎn)的窗口辨別出這些子女節(jié)點(diǎn)中最近的和視見(jiàn)截頭體相交的窗口(相對(duì)于視點(diǎn)的位置),標(biāo)記為WC2。接著對(duì)那些在層1節(jié)點(diǎn)處理步驟中標(biāo)記成潛在可見(jiàn)的物體(或物體的一部分)執(zhí)行步驟715和717。但是,對(duì)于這種層2的節(jié)點(diǎn),位于窗口WC2定義的可見(jiàn)區(qū)域中的物體(或物體的一部分)標(biāo)記成是不可見(jiàn)的。在圖9(A)所示的例子中,最近的層2窗口WC2是窗口C。然后,如果存在作為WC2的子女的層3節(jié)點(diǎn)的窗口,則遍歷這些層3節(jié)點(diǎn)的窗口辨別出這些子女節(jié)點(diǎn)中和視見(jiàn)截頭體相交的最近的窗口(相對(duì)于視點(diǎn)的位置),標(biāo)記為WC3。接著對(duì)那些在層2節(jié)點(diǎn)處理步驟中標(biāo)記為不可見(jiàn)的物體(或物體的一部分)為窗口WC3執(zhí)行步驟715和717。但是,對(duì)于這些層3的節(jié)點(diǎn),位于該窗口定義的可見(jiàn)區(qū)域之內(nèi)的物體(或物體的一部分)標(biāo)記為潛在可見(jiàn)的。若存在相繼的偶數(shù)層(4,6,8,…)最好對(duì)所有的偶數(shù)層重復(fù)層2節(jié)點(diǎn)的處理步驟。并且若存在相繼的奇數(shù)層(5,7,9…)最好對(duì)所有奇數(shù)層重復(fù)執(zhí)行層3節(jié)點(diǎn)的處理步驟。
總之,場(chǎng)所免除了對(duì)單元及單元到單元可見(jiàn)性信息的確定與預(yù)存儲(chǔ)所需的密集性計(jì)算任務(wù)。不帶有窗口的場(chǎng)所不需要幾何計(jì)算,而帶有窗口的場(chǎng)所僅需要對(duì)窗口的投影范圍在空間定位的幾何查詢(xún)。從而對(duì)于任何景象場(chǎng)所是快速、用戶(hù)可控制、計(jì)算效率好、方便和靈活的。
在本發(fā)明的另一種實(shí)施方式中,當(dāng)攝象機(jī)在視點(diǎn)之間移動(dòng)時(shí),上面所說(shuō)明的場(chǎng)所和預(yù)處理可和可見(jiàn)性集一起使用以提供有效可見(jiàn)性判定。如圖8(A)和8(B)中所示,用戶(hù)聯(lián)想景象定義一個(gè)或多個(gè)場(chǎng)所(并可能帶有窗口)。在步驟803,根據(jù)用戶(hù)的輸入建立第一視點(diǎn)(即,第一攝象機(jī)的位置、取向和視角)。在步驟805,對(duì)于第一視點(diǎn)進(jìn)行上述根據(jù)具有場(chǎng)所的實(shí)施方式(或根據(jù)帶有窗口和窗口的實(shí)施方式)的預(yù)處理和再現(xiàn)處理,并且把當(dāng)從第一視點(diǎn)觀察時(shí)對(duì)該景象作出貢獻(xiàn)的第一可見(jiàn)性物體集存儲(chǔ)到例如系統(tǒng)存儲(chǔ)器104中。
在步驟807,根據(jù)用戶(hù)輸入建立第二視點(diǎn)(即,第二攝象機(jī)的位置、取向和視角)。在步驟809,對(duì)第二視點(diǎn)進(jìn)行上述根據(jù)場(chǎng)所(或根據(jù)具有場(chǎng)所和窗口的實(shí)施方式)的預(yù)處理和再現(xiàn)處理,并且把當(dāng)從第二視點(diǎn)觀察時(shí)對(duì)景象作出貢獻(xiàn)的第二可見(jiàn)性物體集存儲(chǔ)到例如系統(tǒng)存儲(chǔ)器104在步驟811,判定攝象機(jī)是否設(shè)置在第一視點(diǎn)處(或設(shè)置在離第一視點(diǎn)預(yù)先規(guī)定的允許范圍內(nèi)的一點(diǎn)處);并且,如果是,在步驟813利用第一可見(jiàn)性集的物體再現(xiàn)景象。
在步驟815,判定攝象機(jī)的位置是否從第一視點(diǎn)(或者從離第一視點(diǎn)的預(yù)先規(guī)定的允許范圍內(nèi)的一點(diǎn)處)移動(dòng)到第二視點(diǎn)(或者離第二視點(diǎn)的一個(gè)預(yù)先規(guī)定的范圍內(nèi)的點(diǎn)處);并若是,在步驟817利用用第一和第二可見(jiàn)性集的并集代表的物體再現(xiàn)景象。最好當(dāng)攝象機(jī)的位置插入到第二視點(diǎn)時(shí)執(zhí)行步驟817。在步驟817之后或者同時(shí),執(zhí)行步驟819從而利用第二可見(jiàn)性物體集根據(jù)第二視點(diǎn)再現(xiàn)景象。
場(chǎng)所和可見(jiàn)性集的結(jié)合典型地會(huì)使復(fù)雜景象中要再現(xiàn)處理的物體的數(shù)量得到大大減少。重要的是,復(fù)雜景象中再現(xiàn)物體的減少不是僅限于特定的范疇(例如軸向排列的體系結(jié)構(gòu)模型)。而且,攝象機(jī)插入期間的可見(jiàn)性集的操作典型地趨向于在運(yùn)動(dòng)期間保持圖象保真度和感覺(jué)連貫性,從而對(duì)于相同的景象復(fù)雜性產(chǎn)生更佳的性能(幀更新更快)和更好的保真度(更大的分辨能力)。
盡管本發(fā)明是參照其特定的一些實(shí)施方式表示和說(shuō)明的,熟練的技術(shù)人員理解在不違背本發(fā)明的精神和范圍的前提下在形式和細(xì)節(jié)上可做出上面所述的和其它的修改。
權(quán)利要求
1.在用多個(gè)位于第一坐標(biāo)系統(tǒng)中的三維物體表示景象的并且其中每個(gè)物體是由代表一個(gè)或多個(gè)基元的圖形數(shù)據(jù)表示的計(jì)算機(jī)圖形系統(tǒng)中,一種根據(jù)一個(gè)在該第一坐標(biāo)系統(tǒng)中具有特征位置、取向及視場(chǎng)的攝象機(jī)再現(xiàn)該景象的方法,該方法包括步驟響應(yīng)用戶(hù)輸入,定義代表第一坐標(biāo)系統(tǒng)中的第一區(qū)域的場(chǎng)所,其中所述場(chǎng)所不同于所述多個(gè)表示所述景象的物體,把表示所述景象的所述多個(gè)物體劃分為第一物體集和第二物體集,第一物體集是從所述場(chǎng)所內(nèi)潛在可見(jiàn)的而第二物體集是從所述場(chǎng)所內(nèi)遮蔽的,以及把和所述第一物體集及所述第二物體集中的一個(gè)集與所述場(chǎng)所相關(guān)聯(lián)的數(shù)據(jù)存儲(chǔ)起來(lái);判定所述攝象機(jī)是否位于所述場(chǎng)所之內(nèi),一旦確定所述攝象機(jī)位于所述場(chǎng)所之內(nèi),根據(jù)將所述第一物體集及所述第二物體集中的一個(gè)集與所述場(chǎng)所相關(guān)起來(lái)的數(shù)據(jù)辨別所述第一物體集,并且生成表示所述第一物體集部分的第一圖形數(shù)據(jù),其中所述第一物體集的所述部分是從所述場(chǎng)所內(nèi)潛在可見(jiàn)的;以及再現(xiàn)所述第一圖形數(shù)據(jù),從而在不再現(xiàn)所述第二物體集部分下再現(xiàn)所述第一物體集部分。
2.權(quán)利要求1的方法,其特征在于,所述場(chǎng)所是位于第一坐標(biāo)系統(tǒng)中的一個(gè)二維幾何圖形。
3.權(quán)利要求2的方法,其特征在于,所述場(chǎng)所為矩形。
4.權(quán)利要求1的方法,其特征在于,所述場(chǎng)所是位于第一坐標(biāo)系統(tǒng)中的一個(gè)三維幾何體。
5.權(quán)利要求1的方法,其特征在于,所述場(chǎng)所包括至少一個(gè)和所述遮蔽相關(guān)的窗口。
6.權(quán)利要求5的方法,其特征在于,所述生成第一圖形數(shù)據(jù)的步驟包括步驟判定由所述攝象機(jī)在第一坐標(biāo)系統(tǒng)中的特征位置、取向及視場(chǎng)定義的視見(jiàn)截頭體是否和所述窗口相交;一旦確定視見(jiàn)截頭體和所述窗口相交,根據(jù)視見(jiàn)截頭體和該遮蔽的相交確定第一區(qū)域;以及執(zhí)行挑選操作以生成所述第一圖形數(shù)據(jù),其中所述第一圖形數(shù)據(jù)表示位于所述第一區(qū)域內(nèi)的所述第一物體集的部分。
7.權(quán)利要求6的方法,其特征在于,所述第一區(qū)域是用各平面的布爾組合表示的。
8.權(quán)利要求1的方法,其特征在于,把將所述第一物體集及所述第二物體集中的一個(gè)集與所述場(chǎng)所相關(guān)起來(lái)的數(shù)據(jù)存儲(chǔ)起來(lái)以作為和所述攝象機(jī)的位置相關(guān)的可見(jiàn)性集。
9.在用多個(gè)位于第一坐標(biāo)系統(tǒng)中的三維物體表示的景象并且其中每個(gè)物體是用代表一個(gè)或多個(gè)基元的圖形數(shù)據(jù)表示的計(jì)算機(jī)圖形系統(tǒng)中,一種用于根據(jù)一個(gè)在該第一坐標(biāo)系統(tǒng)中具有特征位置、取向及視場(chǎng)的攝象機(jī)再現(xiàn)該景象的設(shè)備,該設(shè)備包括裝置,其響應(yīng)用戶(hù)輸入,用于定義代表第一坐標(biāo)系統(tǒng)中的第一區(qū)域的場(chǎng)所,其中所述場(chǎng)所不同于所述多個(gè)表示所述景象的物體;用于把表示所述景象的所述多個(gè)物體劃分為第一物體集和第二物體集,第一物體集是從所述場(chǎng)所內(nèi)潛在可見(jiàn)的而第二物體集是從所述場(chǎng)所內(nèi)遮蔽的;以及用于存儲(chǔ)把所述第一物體集及所述第二物體集中的一個(gè)集和所述場(chǎng)所相關(guān)的數(shù)據(jù);用于判定所述攝象機(jī)是否位于所述場(chǎng)所之內(nèi)的裝置;裝置,當(dāng)確定所述攝象機(jī)位于所述場(chǎng)所之內(nèi)時(shí),用于根據(jù)將所述第一物體集及所述第二物體集中的一個(gè)集與所述場(chǎng)所相關(guān)起來(lái)的數(shù)據(jù)辨別所述第一物體集;用于生成表示所述第一物體集部分的第一圖形數(shù)據(jù)的裝置;以及用于再現(xiàn)所述第一圖形數(shù)據(jù)從而在不再現(xiàn)所述第二物體集部分下再現(xiàn)所述第一物體集部分的裝置。
10.權(quán)利要求9的設(shè)備,其特征在于,所述場(chǎng)所是位于第一坐標(biāo)系統(tǒng)中的一個(gè)二維幾何圖形。
11.權(quán)利要求10的設(shè)務(wù),其特征在于,所述場(chǎng)所為矩形。
12.權(quán)利要求9的設(shè)備,其特征在于,所述場(chǎng)所是位于第一坐標(biāo)系統(tǒng)中的一個(gè)三維幾何體。
13.權(quán)利要求9的設(shè)備,其特征在于,所述場(chǎng)所包括至少一個(gè)和所述遮蔽相關(guān)的窗口。
14.權(quán)利要求13的設(shè)務(wù),其特征在于,所述用于生成第一圖形數(shù)據(jù)的裝置包括用于判定由所述攝象機(jī)在第一坐標(biāo)系統(tǒng)中的特征位置、取向及視場(chǎng)定義的視見(jiàn)截頭體是否和所述窗口相交的裝置;用于在確定視見(jiàn)截頭體和所述窗口相交時(shí)根據(jù)視見(jiàn)截頭體和該遮蔽的相交確定第一區(qū)域的裝置;以及用于執(zhí)行挑選操作以生成所述第一圖形數(shù)據(jù)的裝置,其中所述第一圖形數(shù)據(jù)表示位于所述第一區(qū)域內(nèi)的所述第一物體集部分。
15.權(quán)利要求14的設(shè)備,其特征在于,所述第一區(qū)域是用平面組的布爾組合表示的。
16.權(quán)利要求9的設(shè)備,其特征在于,把將所述第一物體集及所述第二物體集中的一個(gè)集和所述場(chǎng)所相關(guān)起來(lái)的數(shù)據(jù)存儲(chǔ)起來(lái)以作為和所述攝象機(jī)的位置相關(guān)的可見(jiàn)性集。
全文摘要
提供一種允許用戶(hù)定義一個(gè)或多個(gè)場(chǎng)所的機(jī)制。場(chǎng)所是空間中的一個(gè)區(qū)域,例如立體單元,當(dāng)攝像機(jī)位于該場(chǎng)所內(nèi)和潛在可見(jiàn)的(或者潛在不可見(jiàn)的)某些物體相關(guān)。場(chǎng)所不同于表示景象的物體。一個(gè)預(yù)處理步驟檢查攝像機(jī)是否在一個(gè)場(chǎng)所內(nèi),若在時(shí)則確定從該場(chǎng)所內(nèi)潛在可見(jiàn)(或潛在不可見(jiàn))的那些景象的物體。只有那些確定成從場(chǎng)所潛在可見(jiàn)的物體接著才被再現(xiàn)以供顯示。
文檔編號(hào)G06T15/40GK1182925SQ9712060
公開(kāi)日1998年5月27日 申請(qǐng)日期1997年10月16日 優(yōu)先權(quán)日1996年11月19日
發(fā)明者賈·P·梅諾, 加里克·羅曼·羅西那克 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司