999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

改進的射線拾取法在地質體可視化中的應用

2011-05-14 11:58:22王雪莉唐志輝
網絡安全與數據管理 2011年15期
關鍵詞:方法

王雪莉,唐志輝

(中國石油大學,山東 東營 257061)

在三維地質體可視化中,不僅要繪制圖形,而且要允許操作者能夠通過輸入設備(如鼠標)來操縱屏幕上的物體,有時還需要獲取物體的空間坐標或圖形數值,這些都需要以拾取作為實現的基礎。基于二維環境的拾取比較容易實現,但是現實生活中更多接觸的是三維空間實體,應從三維的角度來解決問題,所以在三維環境下的拾取問題也顯得更加重要。

拾取方法有傳統的射線拾取法 (Ray-casting)[1-2],Depth ray方法[3]、基于視口空間的拾取法[4]、基于對象緩沖區的拾取法[5]、3D bubble cursor[6]方法等。在這些方法中,基于對象緩沖區的拾取法與三維場景的物體幾何形狀無關,避免了空間求交的復雜運算,但是拾取的精度較低,且只能拾取可見物體;傳統Ray-casting法拾取精度高,但是只能拾取可見物體;基于視口空間的拾取方法要進行多次空間變換,過于復雜;Depth ray和3D bubble cursor方法操作較復雜,更適用于虛擬現實環境中。本文結合Depth ray算法實現了改進了的射線拾取法,能夠拾取被遮擋的物體。

1 Ray-casting算法

1.1 Ray-casting算法原理

Ray-casting算法又稱為射線投擲法 (簡稱射線法)。拾取操作指當用戶在屏幕上用鼠標點擊某個圖元,應用程序能返回到該圖元的一個標志和某些相關信息。射線拾取算法的一般思想是:得到鼠標點擊處的屏幕坐標,并將其轉換為客戶區坐標,實現視區反變換;然后,通過投影矩陣和觀察矩陣把該坐標轉換為通過視點和鼠標點擊點的一條射入場景的射線,該射線如果與場景模型的圖元相交,則獲取該相交圖元的信息。因此,從數學角度來看,只要得到射線的方向矢量和射線的出射點就確定了射線方程,最后就可以利用射線判斷其與空間一個圖元是否相交,從而實現圖元的選取。

1.2 Ray-casting算法思路

傳統射線拾取法的處理過程大致可以分為以下幾個步驟:

(1)檢測鼠標點擊處的屏幕坐標,并將其轉換為客戶區坐標,實現視區反變換。

(2)計算射線對應點在觀察坐標空間內的坐標。根據投影原理,三維變換相當于通過一個放置在三維世界中的攝像機來觀察當前場景的對象。如圖1所示,設頂點O處是攝像機,那么,視野的邊界就構成了一個視錐體。圖1中遠近兩個裁剪面構成了平截頭體,點P和點P′分別在遠裁剪面 ABCD和近裁剪面 A′B′C′D′上。點擊屏幕上的點P反映到視錐中,就是選中了所有的從點P′到點P的點。對應的情況是,用戶單擊鼠標獲得屏幕上的某一點,即是指定了從視點指向屏幕深處的某一方向,也就確定了屏幕上某條從O點出發的射線(在圖中即為OP),這就是拾取射線。

圖1 視錐體示意圖

對于同一位置上重疊物體的選擇問題,解決辦法是:從屏幕坐標得到射線之后,分別讓重疊的物體與該射線求交,得到交點,然后根據這些與視點的遠近確定選擇的對象,這樣就能夠對那些暫時被其他對象遮住的物體進行選取。

(3)將射線點轉換到世界坐標空間,得到其在世界坐標系中的坐標。最終的運算要在世界坐標空間中進行,所以要把矢量計算所用的點坐標全部轉化到世界坐標空間中,然后在世界坐標空間中求交。

2 Depth ray算法

Depth ray算法[3]是在傳統射線法基礎上提出的一種新的拾取方法。該方法在射線上設置一個深度標記(depth marker),用戶可控制深度標記沿射線移動。拾取時,將場景中的物體與射線求交,然后求相交物體與射線深度標記的距離,其中與深度標記距離最近的物體即被拾取。

圖2為Depth ray拾取法示意圖,圖中直線表示拾取射線,黑色圓點表示深度標記,框中物體是被拾取物體。在圖2(a)中,中間的圓角矩形被拾取,在圖2(b)中,右邊的圓球被拾取。

圖2 Depth ray拾取示意圖

3 三維地質體可視化系統中拾取算法實現

首先構建一個地層模型,地層顯示的最小圖元為三角圖元。用戶可以通過操作地層進行旋轉平移操作,并且可以用普通鼠標進行拾取操作。拾取的單位可以是某個地層也可以是某個三角圖元。當拾取某個特定的地層時,該地層用網格顯示,其他地層被隱藏。當拾取三角圖元時,被拾取的圖元變為用紅色顯示。

傳統射線法拾取精度較高,但是拾取的對象只能是所有與射線相交的對象中距離射線頂點最近的,在有些情況下要拾取被遮擋的物體,而傳統射線法難以實現。Depth-ray方法則通過一個深度標記,可以拾取到與射線相交的所有物體,即使物體被遮擋,由于深度標記要沿著拾取射線移動,所以當與射線相交的物體在拾取射線方向的距離較遠時會影響該方法的效率。本文根據傳統射線法和Depth-ray方法,實現了一種擴展了的射線拾取法。其拾取算法思路是:拾取時,將空間中的對象與射線求交,把與射線相交的所有對象保存起來,用戶可以在這些保存的對象中選擇一個作為拾取的對象,這樣既能保證精確度,又能比Depth-ray方法快。

本文方法實現步驟如下:

(1)鼠標點擊觸發拾取動作,把鼠標點的Windows窗口坐標轉換為三維世界坐標。實現的關鍵代碼為:

其中,worldx、worldy、worldz分別為世界坐標空間中鼠標點的X、Y、Z坐標。

(2)獲取攝像機在世界坐標系中的坐標,由攝像機所在位置向鼠標點發射射線。

(3)把空間中的對象分別與射線求交,并將相交對象的相關信息保存到棧中。保存的信息包括:對象ID、交點坐標、交點與攝像機的距離。

(4)將棧中的對象按照距離由小到大的順序排列。用戶可以根據需要在棧中切換拾取對象,切換的順序按照交點與攝像機的距離從小到大排列。

拾取過程中,與射線相交的對象用藍色標記,被拾取的對象用紅色標記,拾取的點用綠色標記。在本實驗中,單擊鼠標左鍵拾取,點擊鍵盤“Z”鍵在棧中切換拾取對象。

程序運行效果如圖3及圖4所示。圖4表示用戶選擇的拾取對象,拾取時,與射線相交的對象(圖中為三角面片)全部標記,其中被拾取的對象用紅色標記,其余的用藍色標記。

本文在三維地質體可視化系統中,把傳統射線法和Depth-ray方法相結合,實現了一種擴展了的射線拾取法,既能夠拾取被遮擋的物體,又能夠保證精確度和速度,在系統應用中取得了良好的應用效果。

圖3 顯示地層

圖4 拾取與射線相交的對象

[1]BOLT R A.“Put-that-there”: voice and gesture at thegraphics interface[J].Computer Graphics (SIGGRAPH′80 Proceedings), 1980, 14(3): 262-270.

[2]姚繼權,李曉豁.計算機圖形學人機交互中三維拾取方法的研究[J].工程設計學報,2006,13(2):116-120.

[3]VANACKEN L, GROSSMAN T, CONINX K.Multimodal selection techniquesfordense and occluded 3D virtual environments[J].International Journal of Human-Computer Studies, 2009, 67(3): 237-255.

[4]朱明亮,董冰,王祎,等.三維場景中基于視口空間的拾取算法[J].工程圖學學報,2008(2):94-97.

[5]王亞平,余柯,羅堃.在OpenGL中一種新的拾取方法及其應用——基于對象緩沖區的選擇拾取方法[J].工程圖學學報,2003(2):60-64.

[6]VANACKEN L, GROSSMAN T, GROSSMAN T.Exploring the effects of environment density and target visibility on objectselection in 3D virtualenvironments [M].IEEE Symposium on 3D User Interfaces, 2007:116-12.

猜你喜歡
方法
中醫特有的急救方法
中老年保健(2021年9期)2021-08-24 03:52:04
高中數學教學改革的方法
河北畫報(2021年2期)2021-05-25 02:07:46
化學反應多變幻 “虛擬”方法幫大忙
變快的方法
兒童繪本(2020年5期)2020-04-07 17:46:30
學習方法
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
最有效的簡單方法
山東青年(2016年1期)2016-02-28 14:25:23
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 国产超碰一区二区三区| 91外围女在线观看| 人妖无码第一页| 国产幂在线无码精品| 91精品综合| 欧美日韩一区二区在线免费观看| 91精品国产91久久久久久三级| 亚洲精品国产综合99久久夜夜嗨| 久久久久夜色精品波多野结衣| 国产99精品久久| 久久久久人妻精品一区三寸蜜桃| 亚洲最大福利视频网| 国产小视频a在线观看| 国产自无码视频在线观看| 亚洲乱强伦| 国产97色在线| 亚洲无线观看| 国产视频自拍一区| 五月婷婷欧美| 成人精品午夜福利在线播放| 国产激情在线视频| 久久人体视频| 欧美日本激情| 亚洲热线99精品视频| 亚洲综合专区| 蝴蝶伊人久久中文娱乐网| 国产欧美视频在线| 亚洲丝袜中文字幕| 丰满少妇αⅴ无码区| 国产一级视频久久| 伦伦影院精品一区| 国国产a国产片免费麻豆| 性欧美在线| 2021国产乱人伦在线播放| 欧美日韩导航| 91久久国产热精品免费| 亚洲电影天堂在线国语对白| 91网址在线播放| 国产又色又刺激高潮免费看| 免费a在线观看播放| 少妇精品在线| 香蕉eeww99国产精选播放| 国产成人在线无码免费视频| 99视频在线免费| 91www在线观看| 男女性午夜福利网站| 91精品国产91久久久久久三级| 免费毛片视频| 三区在线视频| 自拍偷拍欧美日韩| 国产精品网拍在线| 国产精品区视频中文字幕| 福利国产微拍广场一区视频在线| 91一级片| 精品国产aⅴ一区二区三区| 日韩成人高清无码| 波多野结衣中文字幕久久| 国产亚洲视频免费播放| 久久香蕉国产线看精品| 91午夜福利在线观看精品| 萌白酱国产一区二区| 成人在线第一页| 911亚洲精品| 午夜视频在线观看免费网站| 日韩国产黄色网站| 成人福利在线视频| 日韩精品视频久久| 久久这里只有精品2| 99久久精品久久久久久婷婷| 999国产精品永久免费视频精品久久| 丁香亚洲综合五月天婷婷| 国产精品久线在线观看| 2022精品国偷自产免费观看| 潮喷在线无码白浆| 国产成人精品第一区二区| 亚洲女同一区二区| 国产男人天堂| 亚洲欧洲国产成人综合不卡| 日韩中文无码av超清 | 久久亚洲AⅤ无码精品午夜麻豆| 91亚洲影院| 国产色伊人|