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

三維全景在實訓基地漫游系統中的應用研究

2016-09-29 02:33:58呂杰英杭州輕工技師學院浙江杭州310005
中國教育信息化 2016年18期
關鍵詞:實訓設置

呂杰英(杭州輕工技師學院,浙江杭州310005)

三維全景在實訓基地漫游系統中的應用研究

呂杰英
(杭州輕工技師學院,浙江杭州310005)

全景漫游技術是一種基于圖像繪制的虛擬現實技術,在“互聯網+”的環境下,其良好的交互性和沉浸性,已逐漸在旅游景點虛擬漫游、房產建筑實景展示、文化教育場所三維呈現等領域得到應用。文章以實現杭州輕工技師學院裝潢實訓工場的全景漫游為例,介紹在全景圖的基礎上,結合Web標準HTML5和3D繪圖標準WebGL,使用第三方庫文件Three.js,達到場景水平和垂直方向的自由轉換,使用戶在網上就能觀看實訓基地的全景效果,具有身臨其境的感覺。

虛擬漫游;全景圖;WebGL;Three.js

一、引言

“互聯網+”是創新2.0下互聯網發展的新業態,是利用信息通信技術以及互聯網平臺,讓互聯網與傳統行業進行深度融合,創造新的發展生態[1]。在“互聯網+”的各個領域中,最基礎、發展最快的就是Web的應用,人們不再滿足于二維平面的網絡體驗,而是希望在訪問網頁的過程中具有更鮮活的場景和更真實的感受。網頁正逐漸向交互式三維模式發展,其中全景漫游技術已逐漸在旅游景點虛擬漫游、房產建筑實景展示、文化教育場所三維呈現等領域得到應用。

但是,早期的網頁三維技術如Java Applet并未成熟,不僅編程接口復雜,需要安裝相應的渲染插件,而且創建的頁面交互性能簡單,畫面質量相對粗糙,其主要原因就在于Java Applet在進行圖形渲染時,并沒有直接利用到圖形硬件本身的加速功能[2]。而3D繪圖標準WebGL則采用JavaScript腳本語言進行友好的交互式三維圖形的描述,較好地避免了在瀏覽器上安裝相應插件的步驟。同時,通過統一的跨平臺圖形程序接口OpenGL ES2.0,實現了利用底層圖形硬件進行圖形渲染。

二、關鍵技術

1.HTML5標準及canvas標簽

HTML5標準規范的出現,為多媒體在各種終端設備上的加載提供了新的支持。簡單說來,HTML5其實可以看成是HTML、CSS、JavaScript等技術的組合體,該標準在原有的基礎上,增加了本地存儲、設備兼容、三維圖形及特效等新的特性。本文主要利用的是canvas標簽,它為網頁提供了更絢麗的視覺體驗,具備直接在瀏覽器上繪制矢量圖的能力。

Canvas就像是一個畫板,所有的繪制工作可以在JavaScript內部完成,通過id的調用來尋找canvas元素,從而創建 context對象。context對象是內建的HTML5對象,擁有多種繪制路徑、矩形、圓形、字符和插入圖像的方法。

2.3D繪圖標準WebGL

WebGL是一種3D繪圖標準,它實現了將JavaScript 和OpenGL ES 2.0有效結合在一起,通過增加OpenGL ES 2.0的JavaScript綁定,為HTML5中的canvas標簽提供底層硬件的3D加速渲染,這樣開發人員就可以直接通過系統顯卡在普通瀏覽器中展示全景漫游,還能創建復雜的導航和數據視覺化[3]。由此可見,WebGL標準脫離了傳統三維網頁制作所需的專用插件渲染,大大提高了不同終端設備的3D圖形渲染速度,甚至可以用來設計3D網頁游戲等。目前已有多種基于WebGL技術的JavaScript庫被應用在3D圖形創建中,如SceneJS、PhiloGL、Babylon.js、Three.js等,本文主要應用Three.js開發框架。

3.Three.js框架

Three.js是JavaScript編寫的WebGL第三方庫,依據WebGL規范,對底層的圖形接口進行封裝。它提供了一個JavaScript API,可以在沒有插件的情況下進行2D/ 3D硬件加速渲染,減輕了開發者的負擔并加快了開發速度。同時,Three.js還支持多種渲染器(renderer)進行場景制作,能夠提供點、線、面、向量、矩陣等一系列三維創建時所需的基本元素,并可以便捷地將建鏡頭(cameras)、光線(lights)、物體(objects)等對象添加到場景(scene)中[4]。Three.js在全景漫游瀏覽時,與內部主要元素之間的關系如圖1所示。

圖1 全景漫游內部元素聯系圖

三、漫游系統的構建

1.全景圖獲取

在網頁上展示虛擬漫游的效果時,一般有3D建模和全景攝影兩種方式。由于全景圖片直接由實物拍攝得到,因此,只要做好前期拍攝和后期圖片處理,就能得到比建模更真實的視覺感受。本文所得到的虛擬漫游,就是在全景圖的基礎上實現的。

(1)全景圖的拍攝

由于全景拍攝需要捕捉場景360°范圍內的信息,因此要采用廣角鏡頭來拍攝,甚至可以使用魚眼鏡頭。但由于魚眼鏡頭鏡片結構復雜,邊緣和中央進光存在差異,對使用者的技術水平要求比較高,因此這里所采用的是一般的廣角數碼相機,同時配合三腳架和云臺,以保證拍攝時位置的水平。在每個場景的拍攝中,將云臺設定為水平方向每60°為一個結點,垂直方向每30°為一個結點,以保證所得的照片中有至少20%的重疊量,一共拍攝3組,每組6張照片。

而對于環境的要求則是能見度高、光線充足,避免出現一亮一暗的場景。在進行室內拍攝時,一般以內部光照為主,如果室外光線過于明亮,就可能導致圖中出現較多過暗的角落,影響拼接效果。全景拍攝需要表現場景的全局信息,考慮到在觀看時需要旋轉場景,因此拍攝點一般選在場景的幾何中心或某個較高位置,同時避免在拍攝時鏡頭里包含運動物體。

(2)全景圖的拼接

在得到場景圖后,可以使用Photoshop、PhotoImpact、Fireworks等圖像處理軟件對它們進行去噪、雜色處理和色彩色調等相關調整,使得同一場景的曝光程度和色彩濃度基本保持一致。本文所采用的圖像處理軟件是Photoshop CS3,同時該軟件能智能化地完成全景圖的拼接,步驟依次為選擇文件菜單、自動、photomerge(照片拼合)。最后使用變形工具和裁剪工具把完整部分切割出來,裝潢實訓工場的全景圖如圖2所示。

圖2 裝潢實訓工場全景圖

2.三維環境的設置

(1)鏡頭設置

Three.js提供了透視鏡頭和正交鏡頭這兩種鏡頭類型,全景漫游的目的是強調真實感,具有較好的交互性和沉浸性,因此采用透視投影鏡頭。主要代碼設置如下:

//設置透視投影鏡頭,縱橫比為Window的縱橫比,最近視角1,最遠視角1000

//計算移動鏡頭

(2)場景設置

三維場景使用THREE.Scene()來設置;主要代碼設置如下:

//創建一個場景

scene=new THREE.Scene();

//將全景圖放到場景中并做成圓環

//設置縮放為-1

(3)渲染器設置

為實現流暢的預覽效果,本文采用Three.js庫中渲染效果較好的WebGLRenderer來實現圖形渲染。這里就結合了HTML5中的canvas標簽,主要代碼設置如下:

//渲染器設置,動態生成canvas元素設定縱橫比

(4)鼠標操作設置

為實現更友好的交互效果,可以選擇用鼠標進行場景的相關操作,如按住鼠標左鍵進行鏡頭的平移或速度控制等。分別為鼠標經過、鼠標按下、鼠標放松和鼠標滾輪4種事件編寫相應的觸發程序,主要代碼設置如下:

//添加事件,用于用戶可以通過鼠標移動來觀看四周環境

//修改狀態為按下,這時候觸發move事件才能拖動屏幕

isUserInteracting=true;

//將當前鼠標在頁面內的坐標賦值給變量

onPointerDownPointerX=event.clientX;

onPointerDownPointerY=event.clientY;

//獲取計算縮放

onPointerDownLon=lon;

onPointerDownLat=lat;

//鼠標移動事件

function onDocumentMouseMove(event){

//判斷鼠標當前是否按下,如果按下才可以拖動

if(isUserInteracting){

//通過相關計算,將計算結果賦值給lon和lat

//設置鼠標按鍵松開事件

function onDocumentMouseUp(event){

//修改狀態為松開,這時候無法觸發move事件

最終實現的裝潢實訓工場全景漫游如圖3所示。

圖3 裝潢實訓工場全景漫游的實現

四、結束語

本文介紹了基于裝潢實訓工場全景圖的虛擬漫游實現技術,采用HTML5和WebGL相結合的模式,創建出具有良好交互性和沉浸性的三維網頁效果,提供了較二維網頁更友好的用戶體驗和形象生動的畫面效果。WebGL是新一代Web3D技術,也是未來三維網頁開發的核心技術,加之與規范的Web標準HTML5的緊密配合,必然成為三維網頁應用的趨勢。同時對第三方庫文件Three.Js進行研究分析,實現了全景圖的仿真視角和相關鼠標事件的操作,具有較強的應用價值。

[1]百度百科.“互聯網+”[DB/OL].http://baike.baidu. com/link?url=z3Tj1V657OaXjPEIhtH1wXaUC7_sfIz 6udmtmknF_XSljkJpo_YZkq674SElGIhISv3-RHn9h7 lTZGD85xE-J_.

[2]方強.基于WebGL的3D圖形引擎設計與實現[D].合肥:安徽大學,2013.

[3]百度百科.”OpenGL ES”[DB/OL].http://baike. baidu.com/link?url=P0fvVPhRHIQ4Z7Af8w1YyYX-a4IePYK45dQ4XL3iCD012kn-AE5Tm2lLyoLH5Iq6ut FGM2jFGM8cwoIecEv9s3a.

[4]許虎,聶云峰,舒堅.基于中間件的瓦片地圖服務設計與實現[J].地球信息科學學報,2010(4):562-567.

[5]劉愛華,韓勇等.基于WebGL技術的網絡三維可視化研究與實現[J].地理空間信息,2012(5):79-81.

[6]周輝,程陳,任海軍,王丹寧等.基于HTML5的全景圖展示[J].微型機與應用,2012(20).

(編輯:魯利瑞)

G434

A

1673-8454(2016)18-0078-03

猜你喜歡
實訓設置
中隊崗位該如何設置
少先隊活動(2021年4期)2021-07-23 01:46:22
基于CDIO理念的數控實訓教學改革與實踐
8S管理模式在數控實訓教學中的實踐與研究
7招教你手動設置參數
虛擬情景實訓環境三維模擬
電工電子實訓教學改革與創新
電子制作(2017年8期)2017-06-05 09:36:15
基于Excel的財務管理模擬實訓研究
本刊欄目設置說明
中俄臨床醫學專業課程設置的比較與思考
艦船人員編制的設置與控制
主站蜘蛛池模板: 国产又大又粗又猛又爽的视频| 国产成人无码Av在线播放无广告| 色屁屁一区二区三区视频国产| 毛片基地美国正在播放亚洲 | 久久精品欧美一区二区| 99ri精品视频在线观看播放| P尤物久久99国产综合精品| 亚洲制服丝袜第一页| 99久久性生片| 四虎在线观看视频高清无码| 曰韩人妻一区二区三区| www.精品国产| 欧美日韩在线亚洲国产人| 成人日韩精品| 国产99精品久久| 亚洲欧美日韩成人高清在线一区| 国产免费a级片| 国产97色在线| 97久久精品人人做人人爽| 亚洲一本大道在线| 欧洲欧美人成免费全部视频| 久久久久免费精品国产| 国产极品嫩模在线观看91| 98超碰在线观看| 91探花在线观看国产最新| 色天天综合久久久久综合片| 亚洲VA中文字幕| 久久国产精品娇妻素人| 玩两个丰满老熟女久久网| 试看120秒男女啪啪免费| 亚洲高清中文字幕| 日本一区二区不卡视频| 大乳丰满人妻中文字幕日本| 久久五月视频| 国产精品久久久久久久久久久久| 欧美97欧美综合色伦图| 在线观看免费黄色网址| 国产拍揄自揄精品视频网站| 亚洲日韩久久综合中文字幕| 精品国产电影久久九九| 2022精品国偷自产免费观看| 九色91在线视频| 国产男人天堂| 成人毛片在线播放| 国产成人久视频免费| 久久综合色88| 五月天丁香婷婷综合久久| 亚洲综合在线网| 欧美一区二区自偷自拍视频| 国产男女免费视频| 久久国产精品夜色| 亚洲黄色网站视频| 蜜臀AV在线播放| 亚洲床戏一区| 任我操在线视频| 97视频免费在线观看| 亚洲有无码中文网| 国产一区二区影院| 国产精品成人免费视频99| 亚洲av片在线免费观看| 一区二区欧美日韩高清免费| 久久6免费视频| 欧美日韩国产高清一区二区三区| 九色综合伊人久久富二代| 怡春院欧美一区二区三区免费| 国产素人在线| 国产成年女人特黄特色大片免费| 欧美日韩国产在线播放| 国产亚洲精品97AA片在线播放| 国产精品网址在线观看你懂的| 欧美亚洲一区二区三区导航| 欧美日韩精品在线播放| 国产精品极品美女自在线网站| 亚洲黄色成人| 国产精品人成在线播放| 免费在线a视频| 香蕉eeww99国产精选播放| 制服丝袜 91视频| 波多野结衣在线一区二区| 制服丝袜一区| 欧美国产在线精品17p| 欧美日韩国产在线人成app|