什么是ThingJS?
什么是ThingJS?thingjs有哪些功能?thingjs是干嘛的?怎么去利用thingjs進行三維可視化場景的搭建?如何才能快速了解thingjs?我們從以下26個問題來進行解答!
1.什么是ThingJS
ThingJS 名稱源於 物聯網 Internet of things(IoT) 中的 Thing (物),意為面向物聯網可視化開發的 Javascript 庫。主要針對以一棟或多棟建築所組成的園區級別的場景,可以應用於數據中心、倉儲、學校、醫院、安防、預案等多種領域。
ThingJS 基於 HTML5 和 WebGL 技術,可方便地在主流瀏覽器上進行瀏覽和調試,支持 PC 和移動設備。ThingJS 為可視化應用提供了簡單、豐富的功能,只需要具有基本的 Javascript 開發經驗即可上手;
ThingJS 提供了對場景的加載、分層級的瀏覽,對象的訪問、搜索、以及對象的多種控制方式和豐富的效果展示,可以通過綁定事件進行各種交互操作,還提供了攝像機視角控制、點線面效果、溫濕度雲圖、界面數據展示、粒子效果等等各種可視化功能;
2. ThingJS平台的定位是什么?
答:ThingJS平台是優鍩公司基於多年的三維開發經驗,推出的一套面向IOT不同行業的開發者和企業提供三維PaaS開發平台,旨在幫助企業和行業解決方案供應商快速、低成本、低門檻地構建自己的三維應用。
3.ThingJS平台是不是開源的?
ThingJS平台不是開源的,平台提供了一套在線的三維開發環境。如需將開發成果轉換成商業應用,我們將按照Licence授權的方式收取費用。
4.ThingJS開發方式是什么?
入手 ThingJS 時,推薦使用在線開發:
在線開發無需配置開發環境,直接利用在線編輯器即可入手,以最快速度開始;
在線編輯器支持自動拼寫,右鍵菜單可以插入常用代碼塊,降低學習門檻;
在線保存,不用搭建服務器,一鍵發布,隨時隨地演示;
數據對接,支持ajax api的方式,也支持websocket的方式,前台頁面直接獲取數據,數據不經過thingjs平台,安全可靠;
從 ThingJS 網站頂部菜單中進入在線開發,你可以對任何例子代碼進行修改,並運行查看結果;
目前僅支持在線開發,后期可能推出本地調試開發。
5.什么是模型?
ThingJS平台的模型是指一個能夠操作的可復用的3D資源單元。
例如一棟樓是一個模型,一輛車是一個模型,一個傳感器設備是一個模型。
6.什么是場景?
ThingJS平台的場景是指由眾多模型放在一起組合而成一個空間。
例如一個圍欄加一棟樓加圍欄里的一輛小車組合便成為一個場景。
7.什么是應用?
ThingJS平台的應用是指帶交互的場景。 應用使用JavaScript腳本語言開發。
例如一個糧倉應用,點擊倉庫可以顯示信息牌,點擊屋頂可以開蓋。
8.什么是數據對接?
數據對接的目的是將真實物理世界的數據顯示到虛擬的3D場景上。
ThingJS平台通過http協議JSON格式的方式獲取數據,通過內部接口將數據顯示到3D場景上。同時也包括改變3D場景中模型的屬性。
例如移動一個車,打開一個櫃門等。
9.什么是坐標系?
物體在空間中的標注值稱為坐標。
某種標注方法稱為坐標系,例如直角坐標系,球坐標系,圓柱坐標系。
ThingJS三維空間采用xyz右手直角坐標系。
10.什么是世界坐標/絕對坐標系?
以場景原點為中心的直角坐標系為世界坐標。
在ThingJS中所有的物體的position值均為世界坐標,排列為[x,y,z]。
11.什么是相對坐標?
在層次結構中的物體有相對坐標。
例如:某個建築某樓層中的物體,該物體相對這個樓層。
ThingJS中屬性localPosition為相對坐標,相對某層樓的中心點,室外物體無相對坐標。
12.什么是室內/室外物體?
在搭建工具中有室內和室外兩種模式,凡在室內模式種放置的物體均為室內物體。
在室外模式放置的物體為室外物體。
13.項目中如何使用坐標系?
項目中一般采用替代法放置物體。
在搭建工具中放置方盒,然后通過程序替換為實際設備,這樣就可以避開復雜的坐標系。
14. 你們是做整體可視化解決方案的嗎?
答:我們是3D可視化平台軟件提供商,利用我們的3D可視化平台ThingJS可以完成各行業應用。我們本身可提供這些行業的3D可視化系統的實際項目交付,但我們並不提供某行業的整體解決方案。我們是3D可視化系統產品提供商,並不是整體解決方案提供商,整體解決方案是由我們行業合作伙伴來完成的。我們在整體解決方案中提供可視化軟件部分,不涉及硬件及可視化軟件外其它子項。所以,我們也希望有更多的行業合作伙伴開始使用我們的3D可視化平台軟件完成3D可視化監管系統交付。我們的ThingJS 3D可視化平台就是面向合作伙伴的低門檻、低成本3D可視化解決方案,適合非3D專業廠商來完成3D應用監管系統構建。
15. 你們做三維建模嗎?
答:大概來說也算是的。但我們不是提供3D建模服務的公司,我們是提供3D建模、應用構建工具平台的公司。我們的3D建模、應用構建工具平台就是ThingJS平台,可上我們ThingJS網站看到。我們鼓勵大家利用我們的工具平台來完成3D建模和應用開發。
16. 你們是如何建模的,過程復雜嗎?
答:我們ThingJS平台最大的優勢就是我們提供一個面向普通人的3D場景搭建工具,傳統上3D建模需要專門的模型設計師通過3DMax等軟件來完成,現在普通人就可以利用我們的ThingJS 3D場景搭建工具完成大部分3D場景搭建工作了。我們的3D場景搭建工具既然是面向普通人的,自然很簡單,我們曾給小學生培訓搭建工具使用,一節課下來基本上小朋友都會搭建了。
17. 這么多行業,有不少模型你們的庫里是沒有的,如何解決呢?
答:是的,萬物可視,行業模型太多,我們模型庫確實不可能有那么所有模型。所以我們提供了額外模型用戶自行上傳功能。現在可以在我們的場景搭建工具中上傳您所需的額外obj模型文件。這些額外模型是需要3DMax等工具軟件另行制作的,當然從網上下載等渠道來的也都可以使用。
18. ThingJS如何收費呢?
答:如果合作伙伴用我們的平台自行進行模型搭建、應用開發,目前我們ThingJS平台的3D場景搭建工具、在線應用調試環境、公開模型庫等都是免費的。當然我們也不全是免費的,從我們ThingJS.com網站可看到價格頁,商業開發者,在線部署服務以我們ThingJS官網價格頁為准,除上面這些自行制作研發的方式,我們也可提供定制建模、開發服務。您在ThingJS官網登錄賬戶,可以看到申請建模,申請開發,根據您的需要選擇,提交相關信息后,我們會有專人聯系您。
19. 可以離線部署嗎?怎么收費?
答:可以的。雖然ThingJS主推PaaS平台,但也支持離線部署。目前公開市場授權價為:58888元。如果您需要的授權使用量大等,具體價格還可以進一步溝通。
20.ThingJS平台完整的開發流程是什么?
答:ThingJS平台開發3D可視化應用一般包括三個步驟:模型搭建、在線開發、應用部署。
1. 模型搭建:ThingJS平台自帶三維場景搭建工具,能夠滿足不同場景下的三維搭建要求。CampusBuilder面向小型園區及該規模以下的場景搭建;CityBuilder面向城市級,提供更大場景的三維搭建組件;
2. 在線開發:場景搭建完成可導出ThingJS平台專有文件格式,上傳到我們的在線開發平台進行應用開發。開發是用純JavaScript腳本進行,普通網頁開發人員都可完成,無需3D開發經驗。通過JS腳本,可為3D場景增加UI界面、交互控制邏輯、對接數據、實時監控等功能,實現一個完整的3D可視化應用程序。
3. 應用部署:系統在線調試、測試無誤后,就可以部署了。目前我們提供兩種方式,在線部署在ThingJS雲平台上或者下載離線部署包在您本地環境部署。
21. ThingJS的3D看着挺酷,對系統運行硬件有哪些要求?
答:ThingJS的3D可視化應用是B/S架構的,3D場景是運行在客戶端的瀏覽器中。3D場景渲染展示對電腦設備要求較高,特別是顯卡,一般必須是獨立顯卡。目前一般新的電腦都有獨立顯卡沒有問題,老的辦公用電腦可能在這方面不太具備條件。在不符合要求的電腦上查看3D場景會有卡頓感覺。ThingJS若是離線部署,需要部署到服務器端,ThingJS對服務器端的要求並不高。具體要求如下:
1. 客戶端
系統:Windows 7及以上
CPU:雙核 CPU2.8GHz及以上
內存:8G及以上
顯卡:最低GTX650,推薦GTX960及以上,顯存1G及以上
硬盤:300GB及以上
2. 服務器端
系統:Windows Server 2003及以上
CPU:雙核 CPU2.8GHz及以上
內存:8G及以上
硬盤:500GB及以上
軟件環境:JDK 1.6及以上
22. ThingJS平台3D場景挺好看,還有那些應用呢?
答:3D可視化的一個重要作用確實是“好看”,或者說降低認知門檻,使應用場景、應用數據的展示更加直觀有效,大幅降低人們認知、監管特定行業應用狀態變化的難度。當然,我們也可以總結諸如推演、仿真、預測、大數據展示等方面3D可視化不可替代的作用,但如果特定行業應用或用戶對“好看”本身就是無感的,那也許3D可視化確實還不是他們當務之急。
23. ThingJS和BIM有什么不同?有什么關系?
答:我們和BIM有差異,也有關聯:
a) 差異方面主要是定位差異:我們和BIM應用在主要應用定位上有所不同。BIM模型主要用於工程建設過程管理,我們的模型主要用於建築完成后的日常運營管理;
b) 其次是模型差異:因為定位差異,所以BIM模型往往非常巨大,單體一棟樓的BIM模型1-2G是常見現象。這樣的模型在日常管理的3D可視化應用中是不太可用的,因此往往需要輕量化。而BIM模型的輕量化過程,可能本身就要消耗大量時間精力。ThingJS有快速建模的能力,與之對比,往往用ThingJS模模搭工具根據CAD圖紙搭建完成一個建築比用相應BIM模型輕量化后應用成本更低;
c) 雖然有差異,但我們和BIM也有關聯:實際上ThingJS並不拒絕BIM模型,ThingJS支持BIM模型輕量化后倒入ThingJS場景完成行業應用。不過現在BIM模型的使用需要按項目單獨處理。
24. 如果某行業應用你們來做,大概多少錢?
答:雖然我們主推PaaS平台,鼓勵合作伙伴完成行業應用開發,但如果確實需要,我們也可提供比如展板這些行業的3D可視化應用交付。交付會按傳統軟件項目開發來評估報價,具體的可針對特定項目溝通評估后報價。
25. ThingJS和地圖坐標能整合嗎?(室內坐標是地圖坐標一致嗎?)
答:可以(可以通過映射一致)。我們的3D場景會有自己的坐標原點,如果需要可以和某地理信息坐標進行對齊,到時只需要進行一定的坐標轉換就可以使兩者坐標對應。當然,在我們3D場景里是主推對象ID定位而不是坐標對外的,對於室內管理而言,前者更加有效和簡便。
26. ThingJS和DataV/ECharts有什么區別?
答:ThingJS是從3D可視化(擬合現實世界)角度出發的,DataV/ECharts是從數據可視化的角度出發的,雖然兩者在特定領域會有合集,但因為基礎着眼點差異,使ThingJS在對比中有差異化優勢。ThingJS的優勢可列舉以下方面:
a) 3D專業性和打醬油:因為ThingJS是從3D可視化角度出發的,因此ThingJS在3D引擎核心能力的維度、性能、封裝豐富性方面都具有先天優勢。為天下沒有難開發的3D可視化應用是ThingJS的目標。而3D能力對DataV而言是后期加入的輔助性能力,和ThingJS以3D引擎為自己核心能力對比相去甚遠;
b) 交互應用和圖表:ThingJS考古到最早的核心能力開發方來自於3D游戲開發,這是一個非常強調3D交互的領域;而DataV/ECharts出身於做圖表、做儀表盤,是從傳統BI走過來的,出身的差異延續至今。因此ThingJS更強調打造3D場景,擬合各行各業運行環境,在交互操作情況下為各傳統行業的可視化監管賦能,可形成各行業的3D可視化監管軟件;而DataV/ECharts因為強調圖表、儀表盤展示,更多見於大屏展示應用,DataV/ECharts即使形成行業管理軟件,也是交互能力非常若的畫面展示為主,與ThingJS的行業應用交互能力難以相比;
c) 展示風格差異:ThingJS作為專業的3D可視化平台,適合於各種3D展示風格,既可以以接近真實的模型風格展示,也可以以科幻風格、卡通風格等各種風格展示,能更方便地支撐各類應用場合的需要;而DataV/ECharts的3D是輔助性功能,一般只能提供科技感風格展示,對於復雜交互應用較難應付。
ThingJS有哪些工具?ThingJS有一個ChartBuilder子產品,和DataV/ECharts是一個對標的產品,也都是主打科技感大屏搭建的。而且,比如阿里的雲棲大會上就有阿里的某合作伙伴使用我們的ChartBuilder產品而不是DataV搭建了展台展示大屏。同時ThingJS還有citybuilder和campusbuiler工具,前者用於三維城市地圖建模,后者是用於園區搭建。