基於WebGL的智慧校園可視化全景漫遊技術實踐 ThingJS

2021-01-21 ThingJS

#三維可視化##3D開發#

智慧校園總體設計與規劃用戶與虛擬場景的互動實現全局場景的漫遊模式

國內各大高校,近幾年紛紛搭建了3D智慧校園,如清華大學智慧校園系統,更是實現了虛擬課堂功能。新華三集團與優鍩ThingJS達成技術戰略合作,利用ThingJS平臺構建3D智慧校園,創建一個足不出戶就可以了解校園地理信息與文化背景的虛擬平臺。

1. 總體設計與規劃

智慧校園系統的架構設計分為基礎層、數據層、服務層、應用層和表示層五個層次。

基礎平臺採用的是伺服器,ThingJS平臺提供在線發布和離線部署兩個項目管理功能,本文選擇局域部署,採用Windows平臺配合Tomcat來配置伺服器;數據層主要負責文本數據、多媒體數據、關係型數據的存儲管理;服務層負責給應用層提供基礎性服務;應用層組件可以單獨使用,提供監控管理、角色模式漫遊和全局模式漫遊;表示層將系統進行客戶端的展示,即對用戶所能直觀看到的頁面進行展示。

構建虛擬場景,主要基於WebGL 3D繪圖技術實現虛擬場景的生成整合,將前面準備好的模型導入到智慧校園場景的目標坐標內,並為建築物和天空貼圖,再添加3D交互腳本,實現用戶與虛擬場景的漫遊功能。

JavaScript開發邏輯下的3D框架-ThingJS,將複雜的3D功能代碼封裝起來,開發者可以不必關心框架內部的代碼是如何實現的,只要正確的調用接口即可快速的完成應用的開發,節省了開發者的時間和精力,同時這種方式也避免了開發者在運用 JavaScript代碼時出現不應該出現的錯誤,3D交互更輕鬆。【註冊使用】

2. 用戶與虛擬場景的互動

我們可以使用滑鼠控制智慧校園的場景,任意地旋轉、平移、縮放,可以查看每個建築物的名稱和文化背景。

建築物標籤和文字性說明的顯示,即在每個建築物上方添加一個建築物的名稱,比如文科樓等標誌牌的顯示;接下來實現滑鼠互動功能,當滑鼠移動到建築物上面時,智慧校園將會顯示該建築物的歷史文化等文字性說明。

實現步驟如下:

(1)利用快捷界面庫來創建一個2D HTML界面,為前面構建好的幾幢建築物上方添加一個小面板,說明建築物的名稱,讓用戶一眼就能清晰地了解整個智慧校園建築物的大致分布情況。2D面板的創建,我們使用 ThingJS提供的UIAnchor對象來實現,用戶可以很方便地了解該建築物的文化背景同時也很直觀地了解該建築物在校園中所在的大致位置。

(2)滑鼠操作場景的旋轉、平移、縮放屬於ThingJS系統內置功能,任何3D場景默認添加一個控制器,即常用的軌跡球控制項 Orbit Controls,並限制了上下旋轉的角度範圍和滾輪控制相機離中心點的最大距離和最小距離。

(3)在3D場景導入一個機器小人,機器人在虛擬場景行走時,利用ThingJS提供的角色動畫api,為它添加了一個行走、跑步、招手等動畫效果,跟隨著機器人漫遊智慧校園的每一個角落,更加生動有趣。

3. 實現全局場景漫遊模式

為了能更清晰明了的構建整合智慧校園,便於未來的擴展,需要對整個場景進行模塊化。通過按層次的劃分,對模型進行歸類,逐層分解模型,從而明確智慧校園的場景元素及場景框架。

智慧校園實現場景漫遊,實際上就是對場景中相機的控制,通過滑鼠跟隨移動的物體瀏覽智慧校園的每一個角落,每幀更新攝像機的位置實現,讓用戶對智慧校園的建築物分布有個全局清晰的概念,比如提供室內的模擬參觀功能。

用戶可以單擊按鈕,進入教室內部的空間,通過計算機渲染,直接查看該教室的整體布局。用戶可以隨意在房間中行走,在任意角度觀察該教室的3D模型。

本項目在CampusBuilder簡單搭建教室的3D場景【客戶端下載】,放置一個綠板、一個教室講臺、以及若干的課桌椅。可以根據實際情況一一定製,或者從ThingJS擴展庫取用3D模型,避免重新建模。然後將這些模型與建築物一起導入ThingJS平臺,並加載到智慧校園的場景,最後計算每個房間的坐標,以便用於機器人定位。

ThingJS - 物聯網3D可視化PaaS平臺

ThingJS庫是用 JavaScript編寫的 WebGL第三方庫,支持中小企業快速開發3D項目,極大簡化了整體流程:1. 在CampusBuilder完成場景的搭建、展示,2. 通過 JavaScript代碼可以完成滑鼠對場景的控制,如移動、平移、縮放等操作,3. 在ThingJS平臺進行實時數據對接,4. 選擇在線或者離線部署,支持iframe連結在線訪問3D場景。

相關焦點

  • 基於WebGL的虛擬太陽系漫遊技術實現 ThingJS 科幻片
    #三維可視化##3D開發#虛擬功能需求2. 太陽系運行需求3. 3D模型呈現4. ThingJS技術分析5. 系統實現步驟3D可視化技術逐漸應用到現代多媒體的課堂教學中。一、功能需求B/S架構為主,通過瀏覽器在線訪問,無需安裝任何插件可觀察太陽系中太陽和各行星的3D模型及其運行狀況各行星運行軌道可視化簡單操作鍵盤滑鼠可實現自由漫遊點擊太陽或行星時顯示該天體的常識信息隨時控制太陽系運行速度準確度高,基於各項真實太陽係數據及運行製作運行基本無卡頓,對用戶輸入實時響應二、運行需求要求跨平臺、跨終端在線展示,兼容PC電腦
  • 基於WebGL的3D可視化告警系統關鍵技術解析 ThingJS
    #三維可視化# #3D開發#WebGL 3D技術新一代3D框架-ThingJS3D可視化告警系統案例基於ThingJS的通用架構設計WebGL 3D技術WebGL是一種在網頁瀏覽器中渲染3D圖形的 JavaScript API,無需加裝插件,只需編寫網頁代碼即可實現3D圖形的展示。
  • 基於WebGL的倉儲糧食溫度告警可視化 ThingJS
    #三維可視化##3D開發#Web端糧堆溫度可視化什麼是B樣條曲線ThingJS 3D引擎技術糧堆的溫度可視化告警Web端糧堆溫度3D可視化為了控制穀物儲藏溫度,需要創造一個不利於蟲黴生長低溫環境的儲糧技術環境,然而出於成本考慮以及進出糧的需要,糧堆內的溫度傳感器設置數量有限,因此在儲糧當中測得的溫度值只是傳感器附近的溫度,其他部分則需要利用相應的方法進行數值模擬
  • ThingJS:基於WebGL的3D技術在網頁中的運用
    3D圖形引擎庫 - Three.js以Three.js為例,繪圖的流程如下所示:threejs是基於WebGL的 3D Javascript庫,它封裝了場景、相機、幾何、3D模型加載器、燈光、材質、著色器、動畫、粒子、數學工具等。
  • 基於webgl的三維室內空間邏輯建模 three.js ThingJS
    與室外空間相比,[ThingJS平臺]的室內空間的三維可視化要求更加精細,如果不能很好地表達容易對用戶造成誤導!與室外空間相比,室內空間的層次結構較為明顯,各樓層間主要是通過樓梯、電梯等這些通道進行連接,除建築本身結構外還有門窗、欄杆、樓梯等要素,要注意這些人工要素的功能性表達。
  • webgl、Javascript、HTML、ThingJS、cesium都是什麼鬼?
    所有這些名詞都源於你要做可視化應用,如果不是請繞行。不是搞技術的朋友念一念就好了,搞技術開發的你得好好念。webgl——是一種3D繪圖協議,這種繪圖技術標準允許把JavaScript和OpenGL ES 2.0結合在一起,通過增加OpenGL ES 2.0的一個JavaScript綁定,WebGL可以為HTML5。
  • 基於WebGL的三維數據可視化大屏開發流 ThingJS
    三維數據大屏可視化系統包含多源數據連接、生成二維/三維視圖、構建可視化大屏、大屏功能應用等一體化服務,基於多年可視化項目經驗,ThingJS平臺得出從數據源上傳到可視化大屏應用的完整流程,供參考。可視化大屏的城市地理數據以2D/3D的視角呈現,火柴盒一樣堆在地圖上的三維效果不再吸睛,三維城市模型有更高級的表現形式,外形栩栩如生,連路邊的綠化帶都清晰可見,這正是thingjs的可視化開發業務。ThingJS可視化組件支持模型導入、場景搭建和可視化增效,基於CityBuilder+ThingDepot+3D源碼二次開發輕鬆實現:1.
  • 結合Echarts、Ajax技術實現可視化大屏監控 ThingJS 3d 開發
    創新的拖拽計算、數據視圖、值域漫遊等特性大大增強了用戶體驗,賦予了用戶對數據進行挖掘、整合的能力。基於數據流設計用戶獲取數據信息生成系統所需的頁面,需要通過登陸前臺界面觸發與後臺的交互,讀取數據傳輸信息,因此需要設計一個數據流模型圖,這裡就不展開來講。
  • 安徽信息工程學院――基於BIM運營管理平臺的智慧校園
    坐落於蕪湖市的安徽信息工程學院,正在依託科大訊飛人才、技術和資源等優勢,建設發展智慧校園,一步步朝著科學的、智能的、安全的、環保的、舒適的校園圖景邁進。其中基於BIM技術打造的建築運營管理平臺,讓學校實現了智慧安防、設備運行管理、能源管理多等方面的智慧應用,有效助力了學校科學化管理。
  • 藉助WebGL三維可視化技術檢索3D動態圖像
    大數據可視化平臺是通過三維表現技術來表示複雜的信息,實現對海量數據的立體呈現。可視化技術藉助人腦的視覺思維能力,通過挖掘數據之間重要的關聯關係將若干關聯性的可視化數據進行匯總處理,揭示數據中隱含的規律和發展趨勢,從而提高數據的使用效率。
  • three.js為何如此奇妙
    WebGL是在瀏覽器中實現三維效果的一套規範,而最初使用WebGL原生的API來寫3D程序是一件非常痛苦的事情,在辛苦的付出下WebGL開源框架出現了,其中three.js就是非常優秀的一個,它掩蓋了很多麻煩的細節,那麼,就讓我們一起來看看,什麼是three.js吧!
  • webgl 迷宮項目開發總結
    收穫webgl 三個js庫webgl-utils.jswebgl-debug.jscuon-utils.js圖片加載var img = new Image();這樣可以防止webgl在渲染的時候圖片還沒加載完而出現黑屏的問題。監聽鍵盤事件保證事件代碼只運行一次。否則會重複綁定多個事件,也就是按鍵一次會觸發多次事件處理。
  • 在這裡,讓智慧閃光
    進入21世紀,隨著信息技術的快速發展和廣泛應用,華東院敏銳瞄準方向,率先在電力行業中提出建設以三維為核心的集成設計平臺,並引入SmartPlant系列軟體,探索基於數位化設計的全新設計管理模式。同年,「基於數位化平臺的電廠集成設計管理模式創新與實踐」項目獲「2012年全國電力行業企業管理創新成果獎」一等獎。  從2015年起,華東院將數位化設計管理模式推廣到全部新建發電項目上,各專業員工全部具備數位化設計能力。兩年後,由華東智慧電廠管理系統、數據中心、全景三維漫遊、施工模擬、VR體驗、三維運行監控6大模塊組成的「智慧工坊」應運而生。
  • 八大瘋狂的 HTML5 Canvas 及 WebGL 動畫效果
    現在瀏覽器和web技術的不斷發展。瀏覽器如Firefox、Chrome、Safari和IE10,web技術如Canvas、SVG和WebGL。 網速越來越快。一些體驗需要實時數據流和預加載資源,更好的網絡狀況能有更好的體驗。 我們挑選了8個由WebGL、HTML5 Canvas和Javascript製作的絕妙效果。每一個都非常簡單但卻發人深省,瘋狂並且極具創意。
  • 20個使用WebGL和Three.js實現的網頁場景
    20個使用WebGL和Three.js實現的網頁場景 也許你們可能已經聽說過關於Three.js庫,Three.js是一個WebGL第三方庫,它能夠讓瀏覽器更加輕鬆的使用和實現3D效果,就打個
  • VR看房裝修 AR校園導航 3D列印校園……
    探索前沿    虛擬家居設計    納入創新創業項目    戴上V R眼鏡,仿佛正真實地身處一棟豪宅裡,通過操作手上的操作器,可以在房間內走動,移動物品,一切都顯得非常真實……這是記者在不久前體驗王浩開發的「基於V R的家居設計漫遊系統」時的第一印象,若不是由於首次使用需要設計者在一旁指導如何操作,你甚至可能都會忘記,此時你的「真身」其實只是在北師大珠海分校校園內一間並不大的由學生負責的
  • 基於「5G+MR」混合現實全息學習模式的智慧校園建設
    研究價值在於將人工智慧教育+混合現實技術素養的形成和發展可視化,將學、練、教、測等教學活動通過手勢識別模擬最自然的操作方式,從根本上改變課堂的物理空間,徹底打破了教學的空間限制,無障礙地觀看現實世界中的物體,在有效的空間內實現了無限的想像,使得多個師生之間的互動時能夠無障礙地進行面對面交流,極大地提升了學習效率。
  • WebGL 入門 – WebGL框架
    但是,也有很多人基於WebGL開發出了各種開源框架,現在,我們就來看看目前有哪些框架能夠為我們所用。Three.js Three.js 是一個開源的JavaScript 3D引擎,該項目的目標是創建一個低複雜、輕量級的3D庫,用最簡單、直觀的方式封裝WebGL中的常用方法。
  • 3D ThingJS
    在物聯網領域,更多是連結傳感器設備進行數據傳輸,進行可視化的直觀展示,而NASA展示Bennu小行星樣本實驗室渲染圖,也許僅僅是新聞發布的演示需求,告訴人們更多有關於宇宙探索的動作——* * *[CampusBuilder產品詳情](https://www.thingjs.com/guide/campus)===如果ThingJS可以創業成功,那麼大部分的年輕人也能夠創業成功
  • 商洛學院召開「綠色校園、智慧校園、海綿校園」座談會
    教育部學校發展規劃建設發展中心王晴講到,「綠色校園、智慧校園、海綿校園」是加強國家綠色發展理念,深化教育在生態文明建設中的引領作用和校園在綠色發展中先行作用的重要舉措。引進綠色校園建設新思想、新方法、新技術,推廣綠色校園建設,要求學校基本建設工作既要提升專業化服務的水平,又要適應國家新的發展戰略的要求。