亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

俯沖導航的制作方法

文檔序號:6593896閱讀:249來源:國知局
專利名稱:俯沖導航的制作方法
技術領域
本發(fā)明涉及三維環(huán)境中的導航。
背景技術
存在用于導航通過三維環(huán)境以顯示三維數據的系統(tǒng)。所述三維環(huán)境包括定義顯示 什么三維數據的虛擬相機。所述虛擬相機具有根據其位置和方位的透視角(perspective)。 通過改變虛擬相機的透視角,用戶能夠導航通過三維環(huán)境。地理信息系統(tǒng)是一種使用虛擬相機導航通過三維環(huán)境的系統(tǒng)。地理信息系統(tǒng)是用 于存儲、檢索、操縱和顯示基本球狀的地球三維模型的系統(tǒng)。所述三維模型可以包括映射到 諸如山脈、流域和峽谷之類的地形的衛(wèi)星圖像紋理。此外,所述三維模型可以包括建筑物和 其它三維特征。所述地理信息系統(tǒng)中的虛擬相機可以從不同透視角查看地球的球形三維模型。地 球模型的空中透視角可以示出衛(wèi)星圖像,但是難以看到地形和建筑物。另一方面,所述模型 的地面水平透視角可以詳細示出地形和建筑物。在當前的系統(tǒng)中,難以從空中透視角導航 到地面水平透視角并且對用戶造成混亂。需要從空中透視角導航到地面水平透視角而不會對用戶造成混亂的方法和系統(tǒng)。

發(fā)明內容
本發(fā)明涉及三維環(huán)境中的導航。在本發(fā)明的一個實施例中,一種計算機實現的方 法在三維環(huán)境中對虛擬相機進行導航。所述方法包括確定三維環(huán)境中的目標。所述方法進 一步包括確定虛擬相機的第一位置和所述三維環(huán)境中的目標之間的距離,確定減少后的距 離,并且根據所述減少后的距離確定斜度。最后,所述方法包括根據所述斜度、減少后的距 離和目標將所述虛擬相機定位在第二位置的步驟。在第二實施例中,一種系統(tǒng)在三維環(huán)境中對虛擬相機進行導航。所述系統(tǒng)包括確 定三維環(huán)境中的目標的目標模塊。當被激活時,斜度計算器模塊確定虛擬相機的第一位置 和所述三維環(huán)境中的目標之間的距離,確定減少后的距離,并且作為所述減少后的距離的 函數確定斜度。而且在被激活時,定位器模塊將所述虛擬相機定位在根據所述斜度、減少后 的距離和目標所確定的第二位置。最后,所述系統(tǒng)包括控制器模塊,其重復地激活所述斜度 計算器和定位器模塊,直至虛擬相機和目標之間的距離低于閾值。在第三實施例中,一種計算機實現的方法在三維環(huán)境中對虛擬相機進行導航。所 述方法包括確定三維環(huán)境中的目標;更新虛擬相機的俯沖參數;并且將所述虛擬相機定 位在通過所述俯沖參數所確定的新位置。所述俯沖參數包括相對于從所述目標向上指向的 矢量的斜度值,相對于所述矢量的方位角值,以及目標和虛擬相機之間的距離值。通過傾斜虛擬相機并減少所述虛擬相機和目標之間的距離,所述虛擬相機向目標 俯沖。以這種方式,本發(fā)明的實施例以不會對用戶造成混亂的方式將虛擬相機從空中透視 角導航到地面水平透視角。
以下將參考附圖對本發(fā)明的其它實施例、特征和優(yōu)勢以及本發(fā)明各個實施例的結 構和操作進行詳細描述。


結合于此并作為說明書一部分的附圖對本發(fā)明進行了圖示,而且連同描述一起進 一步對本發(fā)明的原理進行解釋,并且使得本領域技術人員能夠制造和使用本發(fā)明。圖IA-D是圖示本發(fā)明實施例中若干種俯沖軌道的示圖。圖2是地理信息系統(tǒng)的示例性用戶界面的截屏。圖3A-B是圖示根據本發(fā)明實施例的用于俯沖導航的方法的流程圖。圖4-5是圖示用于確定目標的方法的示圖,其可以在圖3A-B的方法中使用。圖6是圖示在圖3A-B的方法示例中利用初始斜度進行俯沖導航的示圖。圖7A-C是圖示用于確定減少后的距離和相機斜度的方法的流程圖,其可以在圖 3A-B的方法中使用。圖8A是圖示用于根據距離確定斜度的函數的圖形。圖8B是示出使用圖8A中的函數的示例性俯沖軌道的示圖。圖9是圖示用于減少滾動的方法的示圖,其可以在圖3A-B的方法中使用。圖10是圖示用于恢復目標的屏幕空間投影的方法的示圖,其可以在圖3A-B的方 法中使用。圖IlA-B示出了用于調整流線型地形的俯沖軌道的方法,其可以在圖3A-B的方法 中使用。圖12是示出根據本發(fā)明實施例的用于俯沖導航的地理信息系統(tǒng)的構造圖。其中元素首次出現的圖通常以相應的附圖標記最左數字來指示。在圖中,相同的 附圖標記可以指示相同或功能類似的元素。
具體實施例方式本發(fā)明的實施例涉及沿俯沖軌道在三維環(huán)境中對虛擬相機進行導航。在本發(fā)明的 以下詳細描述中,對“一個實施例”、“實施例”、“示例性實施例”等的引用指示所描述的實施 例可以包括特定的特征、結構或特性,但是每個實施例可以不必包括所述特定特征、結構或 特性。此外,這樣的短語不必指代相同的實施例。而且,當結合實施例對特定特征、結構或 特性進行描述時,無論是否明確描述,都認為結合其它實施例影響這樣的特征、結構或特性 處于本領域技術人員的知識范圍內。根據本發(fā)明的實施例,俯沖導航移動相機以到達相對于目標的期望位置和方位。 俯沖參數相對于所述目標對相機的位置和方位進行編碼。俯沖參數可以包括(1)到目標 的距離,(2)相對于目標處垂直線的斜度,(3)方位角,以及可選地(4)滾動。在一個示例 中,方位角可以是相機的主方向。以下對每個參數及其在實踐中的操作進行描述。俯沖導航可以類似于手柄相機(camera-on-a-stick)。在此模擬中,虛擬相機通 過手柄連接到目標點。矢量點從目標點向上。例如,向上矢量可以與三維模型的表面垂直。 如果所述三維模型是球形(諸如地球的三維模型),則矢量可以通過目標從三維模型的中 心延伸。在該模擬中,隨著相機傾斜,手柄成角度遠離所述矢量。在一個實施例中,手柄也可以通過改變相機相對于目標點的方位角而繞所述矢量進行旋轉。圖IA示出了圖示本發(fā)明實施例中的簡單俯沖軌道的示圖100。示圖100示出在位 置102的虛擬相機。在位置102,虛擬相機具有空中透視角。在所示示例中,用戶希望從空 中透視角導航到建筑物108的地面水平透視角。在位置102,虛擬相機被定向為豎直向下, 因此其斜度為零,并且虛擬相機距目標110的距離為116。為了確定俯沖軌道上的下一個位置,距離116被減少以確定新的距離118。在所示 示例中,虛擬相機和目標之間的距離被減少。還確定斜度112。斜度112是從目標110向上 指向的矢量和連接位置104和目標112的線段之間的角度。斜度112可以根據減少后的距 離118來確定。所述相機在俯沖軌道上的下一個位置對應于斜度112和減少后的距離118。 所述相機被重新定位到位置104。位置104距目標的距離為118。最后,相機以斜度112旋 轉以面向目標110。所述過程重復直至虛擬相機到達目標110。當虛擬相機到達目標110時,斜度為 90度,并且虛擬相機面向建筑物108。以這種方式,本發(fā)明的實施例容易地從位置102處的 空中透視角導航到建筑物108的地面透視角。以下對有關俯沖導航、其變化形式和其它實 施例的操作的更多細節(jié)進行描述。圖100中的俯沖軌道也可以在俯沖參數和以上所提到的手柄模擬方面進行描述。 在圖100中的俯沖軌道期間,斜度值增加到90度,距離值減小到零,并且方位角值保持恒 定。在手柄模擬的環(huán)境下,矢量點從目標110向上。在圖100中的俯沖軌道期間,手柄的長 度減小且手柄角度遠離所述矢量。圖100中的俯沖軌道僅僅是本發(fā)明的一個實施例。俯沖 參數可以以其它方式進行更新以形成其它軌道。圖IB示出了圖示本發(fā)明實施例中的另一軌道的示圖140。圖140中的軌道示出了 圍繞目標110盤旋(helicoptering)的虛擬相機。圖140示出了虛擬相機開始在位置148。 沿軌道行進,所述虛擬相機保持與目標等距離。在俯沖參數方面,距離保持恒定,但是斜度 和方位角值可以隨著相機沿軌道移動而變化。在手柄模擬方面,手柄的長度保持恒定,但是 手柄圍繞目標轉動。以這種方式,相機沿以目標為原點的球體的表面移動。圖140中所示的軌道例如可以被用于從不同透視角查看目標點。然而,圖140中 的軌道并不必將用戶從空中轉換到地面水平透視角。而且,圖IB示出了目標110無需從虛擬相機的中心投影(project)出來。這將參 照圖4和5進行更為詳細的描述。圖IC示出了圖示俯沖軌道的示圖170,所述俯沖軌道從不同透視角示出目標以及 從空中到地面水平透視角的轉換。虛擬相機在位置174開始圖170中的俯沖軌道。隨著虛 擬相機從位置174移動到位置176,虛擬相機接近目標,并且如圖100中的俯沖軌道那樣相 對于目標發(fā)生傾斜。但是,虛擬相機還如圖140中的軌道那樣圍繞目標進行盤旋。圖170 中所示的俯沖軌道繼續(xù)直至虛擬相機到達目標110。在俯沖參數方面,斜度值增加到90度, 距離值減小為零,并且方位角值變化。在手柄模擬方面,手柄的長度減小,并且手柄傾斜遠 離從目標110向上指引的矢量并且圍繞所述矢量旋轉。圖ID示出了圖示俯沖軌道可以如何被用于導航通過三維空間的示圖180。所述 三維空間包括兩個建筑物182和184。在建筑物182的頂部,虛擬相機位于位置186。目標 110處于建筑物184的頂部。如以下關于圖4和5所描述的,目標110可以響應于用戶輸入進行選擇。虛擬相機從建筑物182處的位置186沿俯沖軌道188移動到建筑物184處的目 標110。換句話說,所述虛擬相機從建筑物182俯沖到建筑物184。以這種方式,俯沖軌道 可以被用來導航通過三維空間。在另一實施例中,目標位置可以處于移動當中。在該實施例中,俯沖導航可以被用 來跟隨移動目標。以下詳細描述利用移動目標計算俯沖軌道的示例性實施例。俯沖導航可以被地理信息系統(tǒng)用來在包括地球三維模型的三維環(huán)境中進行導航。 圖2是地理信息系統(tǒng)的用戶界面200的截屏。用戶界面200包括用于顯示地理信息/數據 的顯示區(qū)域202。如以上所提到的,在顯示區(qū)域202中顯示的數據來自于虛擬相機的透視 角。在一個實施例中,所述透視角由例如去掉頂部的三維錐形的平截頭體限定。根據其距 虛擬相機的距離,所述平截頭體內的地理數據可以以變化的細節(jié)水平進行顯示。在顯示區(qū)域202中所顯示的示例性地理數據包括地球的圖像。這些圖像可以呈現 于幾何圖形上,所述幾何圖形表示創(chuàng)建地球的三維模型的地球地形。其它可以顯示的數據 包括建筑物的三維模型。用戶界面200包括用于改變虛擬相機方位的控件204??丶?04使得用戶能夠改 變例如虛擬相機的高度、緯度、經度、傾斜度(pitch)、偏航角和滾動。在一個實施例中,使用 諸如鼠標的計算機指示設備操縱控件204。隨著虛擬相機的方位變化,虛擬相機的平截頭體 和所顯示的地理信息/數據也發(fā)生變化。除了控件204之外,用戶還可以使用例如計算機 鍵盤或操作桿的其它計算機輸入設備來控制虛擬相機的方位。在所示示例中,虛擬相機具有地球的空中透視角。在一個實施例中,用戶可以通過 選擇顯示區(qū)域200上的位置來選擇目標。接著,相機可以使用關于圖1所描述的俯沖軌道 向下俯沖到目標的地面透視角。本發(fā)明的地理信息系統(tǒng)可以使用客戶端-服務器計算機體系進行操作。在這樣的 配置中,用戶界面200存在于客戶端機器上。所述客戶端機器可以是具有處理器、本地存儲 器、顯示器以及一個或多個計算機輸入設備的通用計算機,所述計算機輸入設備諸如鍵盤、 鼠標和/或操縱桿。替選地,所述客戶端機器可以是例如移動手持設備的專門的計算設備。 所述客戶端機器通過諸如互聯網的一個或多個網絡與一個或多個服務器進行通信。與客戶 端機器類似,所述服務器可以使用能夠為客戶端提供數據的任意通用計算機來實現。所述 地理信息系統(tǒng)客戶端的體系結構將參照圖12更為詳細地描述。圖3是圖示根據本發(fā)明實施例的用于俯沖導航的方法300的流程圖。方法300以 在步驟302確定目標開始。所述目標可以根據圖2中顯示區(qū)域202上的用戶選擇來確定。 將參照圖4和5更為詳細地描述如何確定目標。在步驟304,可以確定新的俯沖參數并且重新定位虛擬相機。新的俯沖參數可以包 括斜度、方位角以及虛擬相機和目標之間的距離。在實施例中,虛擬相機和目標之間的距離 可以對數地減少。傾斜角度可以根據減少后的距離來確定。在一個實施例中,可以通過向 目標平移,以斜度對虛擬相機設置角度以及以新的距離平移遠離目標來對虛擬相機進行重 新定位。參照圖3B更為詳細地描述步驟304。此外,一種計算俯沖參數的可能方式參照圖 7A-C和圖8A-B進行詳細討論。當對相機進行重新定位時,地球的曲率可能引入滾動。滾動可能對用戶造成混亂。 為了減少滾動,在步驟306對虛擬相機進行旋轉以補償地球的曲率。旋轉相機以減少滾動將參照圖9更為詳細地討論。在重新定位和旋轉相機時,目標可能出現在圖2的顯示區(qū)域202上的不同位置。目 標在顯示區(qū)域202上的位置改變可能對用戶造成混亂。在步驟308,可以通過旋轉地球模型 來恢復目標在顯示區(qū)域上的投影。恢復顯示區(qū)域投影參照圖10進行更為詳細的討論。當重新定位相機和旋轉模型時,與地球相關的更為詳細的信息可以被流送到GIS 客戶端。例如,GIS客戶端可以接收與地形或建筑物相關的更為詳細的信息。在另一示例 中,俯沖軌道可能與地形或建筑物相沖突。結果,可以在步驟310對虛擬相機或目標的位置 進行調整。由于流線型地形數據所導致的調整將參照圖IlA-B進行更為詳細的描述。最終,重復步驟304至310直至在決策框312虛擬相機接近目標。在一個實施例 中,可以重復該過程直至虛擬相機處于目標的位置。在另一個實施例中,可以重復所述過程 直至虛擬相機和目標之間的距離低于閾值。以這種方式,虛擬相機捕捉目標的特寫場景而 不會過于接近使得目標失真。在一個實施例中,方法300還可以朝著移動目標導航虛擬相機。如果距離在步驟 302中根據目標速度減少,則方法300可以使得虛擬相機以指定速度跟隨目標。圖;3B更為詳細地示出了圖3A中方法300的步驟304。如以上所提到的,步驟304 包括更新俯沖參數并且根據所述俯沖參數重新定位虛擬相機。俯沖參數可以包括斜度、方 位角以及虛擬相機和目標之間的距離。在步驟314,傾斜虛擬相機。換句話說,連接目標和 虛擬相機的線段和從所述目標向上指向的矢量之間的角度增大。在步驟316,改變虛擬相機 的方位角。根據所述方位角,所述相機圍繞從目標向上指向的矢量旋轉。最終,定位所述相 機以使得其處于距目標新的距離。將參照圖7A-C和圖8A-B討論一種計算新的斜度、方位 角和距離值的方式。圖4-6、7A-C、8A-B、9-10和11A-B詳細描述了圖3A-B中的方法300。它們提供了 方法300的各種替選實施例。然而,它們并非意味著對方法300進行限制。圖4和5示出了圖示可以在圖3的步驟302中使用的用于確定目標的方法的示圖。 圖4示出了示圖400。示圖400示出了地球模型402。示圖400還示出了虛擬相機的焦點 406。如參照圖2所描述的,所述虛擬相機被用來捕捉和顯示信息。所述虛擬相機具有焦距 408和視口 410。視口 410對應于圖2中的顯示區(qū)域202。用戶選擇顯示區(qū)域202上的位 置,并且該位置對應于視口 410上的點412。通過延伸來自虛擬相機的射線確定與模型的交點來確定所述目標。在示圖400 中,射線414從焦點406延伸通過點412。射線414在位置404與模型402相交。因此,所 述目標是模型402在位置404處的部分。在替選實施例中,射線可以從焦點406延伸通過 視口 410的中心。圖5圖示了根據可選特征對圖4中所確定的目標位置進行調整。圖5示出了示圖 500。示圖500示出了位于位置506的虛擬相機以及三維模型中的建筑物502。射線從位置 506延伸到建筑物502以確定交點510。然而,相機的目標位置可能不是建筑物502本身。 所述目標位置可以是提供建筑物502的視圖的從建筑物502偏移的位置。所以,目標被設 置為位置508。虛擬相機從位置506沿軌道504俯沖到位置508。以這種方式,虛擬相機從 垂直的空中透視角轉移到建筑物502的水平的地面透視角。虛擬相機的開始位置無需是垂直的。圖6示出了示圖602,其圖示了具有初始的非零斜度的俯沖導航。示圖602示出了虛擬相機在位置602處具有初始斜度。所述虛擬相機 沿軌道606從位置602俯沖到目標位置604。如以上參照圖3所討論的,當確定了目標位置時,可以在步驟306中進行幾個計算 來確定虛擬相機在俯沖軌道中的下一個位置。特別地,確定虛擬相機新的斜度以及虛擬相 機與目標之間新的減少后的距離。圖7A-C和圖8A-B圖示了如何確定減少后的距離和斜度。 圖7A是圖示用于確定斜度和減少后的距離的方法700的流程圖。方法700以在步驟702確定對數地減少的距離作為開始。在高的空中距離不存在 用戶感興趣的很多數據。然而,隨著相機接近地面,存在用戶感興趣的更多數據。由于對數 函數將虛擬相機快速移動通過俯沖軌道高的空中部分,所以其是有用的。然而,隨著虛擬相 機接近地面,對數函數使其移動更慢。在使用對數函數的一個實施例中,距離可以被轉換為 對數等級。對數等級可以通過改變參數而增加。接著,使用指數函數將對數等級轉換回距 離。等式序列可以如下L = -Iog2 (C*0. 1) +4. 0,L' = L+Δ ,R = 10*2(4 CHL'),其中Δ是變化參數,L是對數等級,C是當前距離,而R是減少后的距離。當在步驟702中確定了減少后的距離時,根據該距離確定斜度。方法700圖示了 用于確定斜度的兩種替選步驟。在步驟710,通過應用絕對斜度函數來確定斜度。在步驟 720,通過應用增量斜度函數來確定斜度。圖7Β更為詳細地圖示了步驟710的絕對斜度函數。所述絕對斜度函數限定了每 個距離的斜度。這具有創(chuàng)建預定義的俯沖軌道的效果。在步驟712,三個距離值被轉換為對 數等級。被轉換為對數等級的三個距離值為(1)步驟702中計算的到目標的減少后距離, ⑵在俯沖軌道開始處到目標的距離,以及⑶如圖3中步驟312所描述的結束俯沖軌道的 閾值距離。用來將所述距離轉換為對數等級的等式可以如下Ls = -Iog2 (S*0. 1) +4. 0,Lt = -Iog2 (Τ*0· 1) +4. 0,Le = -Iog2 (R*0. 1) +4. 0,其中S是開始距離,T是閾值距離,R是減少后的距離,Ls是開始的對數等級,Lt是 閾值對數等級,Le是減少后距離的對數等級。在步驟714,基于對數等級(Ls,LT, Le)、開始斜度值和結束斜度值對斜度值進行插 值。非零的開始斜度值參照圖6進行描述。結束斜度值通常將為90度,其可以與地面平 行。在示例中,插值函數可以是線性的、二次的、指數的、對數的或者本領域技術人員顯而易 見的其它函數。示例性線性插值函數為
權利要求
1.一種計算機實現的用于在三維環(huán)境中導航虛擬相機的方法,包括(A)確定所述三維環(huán)境中的目標;(B)確定所述三維環(huán)境中在虛擬相機的第一位置和所述目標之間的距離;(C)確定減少后的距離;(D)根據所述減少后的距離確定斜度;以及(E)將所述虛擬相機定位在根據所述斜度、所述減少后的距離和所述目標所確定的第 二位置處,其中所述虛擬相機的位置由一組參數限定。
2.如權利要求1所述的方法,進一步包括(F)重復步驟⑶至(E)直至所述虛擬相機和所述目標之間的距離低于閾值。
3.如權利要求2所述的方法,其中步驟(D)的確定包括將所述斜度確定為所述減少后 的距離的函數,其中所述函數被定義為使得所述斜度隨著所述減少后的距離接近于零而接 近90度。
4.如權利要求3所述的方法,其中步驟(D)的確定進一步包括使用所述減少后的距離 的所述函數來確定所述斜度,其中所述函數被定義為使得所述斜度隨著所述距離減少而更 快地接近90度。
5.如權利要求3所述的方法,其中步驟(E)的定位包括(1)將所述虛擬相機平移到所述目標中;(2)轉變所述虛擬相機的角度以與所述斜度相匹配;和(3)以所述減少后的距離將所述虛擬相機平移到所述目標之外。
6.如權利要求3所述的方法,其中步驟(A)的確定包括(1)將來自所述虛擬相機的焦點的射線延伸通過用戶所選擇的點;(2)確定所述射線與所述三維環(huán)境中的三維模型之間的交點;和(3)確定在所述交點處的所述三維模型中的目標。
7.如權利要求6所述的方法,其中步驟(E)的定位包括旋轉所述相機以減少或消除滾動。
8.如權利要求7所述的方法,其中所述旋轉包括將所述相機旋轉連接所述第一位置和 所述三維模型中的地球模型的中心的第一線段以及連接所述第二位置和所述地球模型的 中心的第二線段之間的角度。
9.如權利要求1所述的方法,進一步包括(F)旋轉所述三維環(huán)境中的地球模型以使得所述目標在所述虛擬相機處于所述第一位 置和所述第二位置時投影到所述虛擬相機的視口上的相同點上;和(G)重復步驟⑶至(F)直至所述虛擬相機和所述目標之間的距離低于閾值。
10.如權利要求9所述的方法,其中步驟(F)的旋轉包括在所述斜度的方向上將所述地 球模型旋轉連接所述第一位置和所述三維模型中的地球模型的中心的第一線段和連接所 述第二位置和所述地球模型的中心的第二線段之間的角度。
11.如權利要求1所述的方法,進一步包括(F)重新定位所述虛擬相機以使得所述虛擬相機的位置處于所述三維環(huán)境的三維模型 中的地形之上;和(G)重復步驟⑶至(F)直至所述虛擬相機和所述目標之間的距離低于閾值。
12.如權利要求1所述的方法,其中步驟(A)的確定包括(F)重新定位所述目標以使得所述目標的位置處于所述三維環(huán)境的三維模型中的地形 之上;和(G)重復步驟⑶至(F)直至所述虛擬相機和所述目標之間的距離低于閾值。
13.如權利要求1所述的方法,其中步驟(C)的確定包括對數地減少所述距離。
14.一種用于在三維環(huán)境中導航虛擬相機的系統(tǒng),包括目標模塊,其確定所述三維環(huán)境中的目標;斜度計算器模塊,當被激活時,其確定虛擬相機的第一位置和所述三維環(huán)境中的所述 目標之間的距離,確定減少后的距離并且將斜度確定為所述減少后的距離的函數;和定位器模塊,當被激活時,其將所述虛擬相機定位在根據所述斜度、所述減少后的距離 和所述目標所確定的第二位置處,其中所述虛擬相機的位置由一組參數定義;和控制器模塊,其重復地激活所述斜度計算器和所述定位器模塊直至所述虛擬相機和所 述目標之間的距離低于閾值。
15.如權利要求14所述的系統(tǒng),其中所述斜度計算器用來確定所述斜度的函數被定義 為使得所述斜度隨著所述減少后的距離接近于零而接近90度。
16.如權利要求15所述的系統(tǒng),其中所述斜度計算器用來確定所述斜度的函數被定義 為使得所述斜度隨著所述距離減少而更快地接近90度。
17.如權利要求16所述的系統(tǒng),其中所述定位器模塊將所述虛擬相機平移到所述目標 中,轉變所述虛擬相機的角度以匹配所述斜度,并且以所述減少后的距離將所述虛擬相機 平移到所述目標之外。
18.如權利要求17所述的系統(tǒng),其中所述目標模塊將來自所述虛擬相機的焦點的射線 延伸通過用戶所選擇的點,確定所述射線與所述三維環(huán)境中的三維模型之間的交點,并且 確定在所述交點處的所述三維模型中的目標。
19.如權利要求18所述的系統(tǒng),進一步包括滾動補償器模塊,其旋轉所述相機以減少 或消除滾動,其中所述控制器模塊重復地激活所述滾動補償器模塊直至所述虛擬相機和所述目標 之間的距離低于閾值。
20.如權利要求19所述的系統(tǒng),其中所述滾動補償器模塊將所述相機旋轉連接所述第 一位置和所述三維模型中的地球模型的中心的第一線段和連接所述第二位置和所述地球 模型的中心的第二線段之間的角度。
21.如權利要求18所述的系統(tǒng),進一步包括屏幕空間模塊,當被激活時,其旋轉所述三 維環(huán)境中的地球模型以使得所述目標在所述虛擬相機處于所述第一位置和所述第二位置 時投影到所述虛擬相機的視口上的相同點上,其中所述控制器模塊重復地激活所述模型模塊直至所述虛擬相機和所述目標之間的 距離低于閾值。
22.如權利要求21所述的系統(tǒng),其中所述屏幕空間模塊在所述斜度的方向上將所述地 球模型旋轉連接所述第一位置和所述三維模型中的地球模型的中心的第一線段和連接所 述第二位置和所述地球模型的中心的第二線段之間的角度。
23.如權利要求14所述的系統(tǒng),進一步包括地形調節(jié)器模塊,當被激活時,其重新定位所述虛擬相機以使得所述虛擬相機的位置處于所述三維環(huán)境的三維模型中的地形之上,其中所述控制器模塊重復地激活所述地形調節(jié)器模塊直至所述虛擬相機和所述目標 之間的距離低于閾值。
24.如權利要求14所述的系統(tǒng),進一步包括地形調節(jié)器模塊,當被激活時,其重新定位 所述目標以使得所述目標的位置處于所述三維環(huán)境的三維模型中的地形之上,其中所述控制器模塊重復地激活所述地形調節(jié)器模塊直至所述虛擬相機和所述目標 之間的距離低于閾值。
25.如權利要求14所述的系統(tǒng),其中所述斜度計算器模塊對數地減少所述距離。
26.一種計算機實現的用于在三維環(huán)境中導航虛擬相機的方法,包括(A)確定所述三維環(huán)境中的目標;(B)更新所述虛擬相機的俯沖參數,所述俯沖參數包括相對于從所述目標向上指向的 矢量的斜度值、相對于所述矢量的方位角值、以及所述目標和所述虛擬相機之間的距離;并 且(C)將所述虛擬相機定位在由所述俯沖參數限定的新位置。
27.如權利要求沈所述的方法,進一步包括(D)旋轉所述三維環(huán)境中的地球模型以使得所述目標在所述虛擬相機處于所述新位置 時投影到所述虛擬相機的視口上的相同點上。
28.如權利要求沈所述的方法,其中步驟(A)的確定包括(1)將來自所述虛擬相機的焦點的射線延伸通過用戶所選擇的點;(2)確定所述射線與所述三維環(huán)境中的三維模型之間的交點;和(3)確定在所述交點處的所述三維模型中的目標。
29.如權利要求沈所述的方法,其中步驟(C)的定位包括旋轉所述虛擬相機以減少或 消除滾動。
30.一種用于在三維環(huán)境中導航虛擬相機的系統(tǒng),包括 目標模塊,其確定所述三維環(huán)境中的目標;斜度計算器模塊,其更新所述虛擬相機的俯沖參數,所述俯沖參數包括相對于從所述 目標向上指向的矢量的斜度值、相對于所述矢量的方位角值、以及所述目標和所述虛擬相 機之間的距離;和定位器模塊,其將所述虛擬相機定位在由所述俯沖參數限定的新位置。
31.一種用于在三維環(huán)境中導航虛擬相機的系統(tǒng),包括 用于確定所述三維環(huán)境中的目標的裝置;用于確定虛擬相機的第一位置和所述三維環(huán)境中的所述目標之間的距離的裝置; 用于確定減少后的距離的裝置; 用于根據所述減少后的距離確定斜度的裝置;和用于將所述虛擬相機定位在根據所述斜度、所述減少后的距離和所述目標所確定的第 二位置處的裝置,其中所述虛擬相機的位置由一組參數限定。
32.一種用于在三維環(huán)境中導航虛擬相機的系統(tǒng),包括 用于確定所述三維環(huán)境中的目標的裝置;用于確定虛擬相機的第一位置和所述三維環(huán)境中的所述目標之間的距離的裝置;用于確定減少后的距離的裝置; 用于根據所述減少后的距離確定斜度的裝置;和用于將所述虛擬相機定位在根據所述斜度、所述減少后的距離和所述目標所確定的第 二位置處的裝置,其中所述虛擬相機的位置由一組參數限定。
33. 一種在其上存儲有計算機可執(zhí)行指令的有形的計算機可讀介質,如果被計算設備 執(zhí)行,所述指令使得所述計算設備執(zhí)行方法(A)確定所述三維環(huán)境中的目標;(B)確定虛擬相機的第一位置和所述三維環(huán)境中的所述目標之間的距離;(C)確定減少后的距離;(D)根據所述減少后的距離確定斜度;以及(E)將所述虛擬相機定位在根據所述斜度、所述減少后的距離和所述目標所確定的第 二位置處,其中所述虛擬相機的位置由一組參數限定。
全文摘要
本發(fā)明涉及三維環(huán)境中的導航。在一個實施例中,在虛擬相機處于第一位置時選擇所述三維環(huán)境中的目標。確定所述虛擬相機和目標之間的距離。減少所述距離,并且作為減少后的距離的函數確定斜度。根據所述斜度、減少后的距離和目標位置確定所述虛擬相機的第二位置。最后,將相機定位為面對所述目標,在一個示例中,該過程重復直至虛擬相機被定位為與地面平行,并且所述距離接近所述目標。在另一個示例中,所述目標的位置移動。
文檔編號G06T15/50GK102067179SQ200980121381
公開日2011年5月18日 申請日期2009年4月14日 優(yōu)先權日2008年4月14日
發(fā)明者丹尼爾·巴爾凱, 戈克爾·瓦拉得汗 申請人:谷歌公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1