天天看點

ThingJS拾取對象開發技術的簡單邏輯

響應滑鼠操作,其中有一個非常重要的知識:使用滑鼠點取,達到對三維模型對象的捕捉。拾取對象的開發技術有一定的邏輯,尤其在透明建築内,ThingJS幫你簡單實作拾取功能。

ThingJS拾取對象開發技術的簡單邏輯

物聯網應用中 3D 場景中的模型會越來越多,這時我們不可避免需要一些互動效果,比如當點選某一個模型的時候做出回報動作,這需要我們能夠通過滑鼠的點選位置推導出點選到的模型,這種技術實作稱為 3D 拾取。

Picker(選擇器/拾取器/選取器)是指提供多個選項集合供使用者選擇其中一項的控件,在T hingJS線上開發平台,Picker是thingjs中為拾取制作的一個類,主要是用于拾取物體,同時也有框選拾取的功能。

在3D場景中會建立某些對應真實物品的對象,模型内置了簡單動畫,通過很多事件設定,比如點選滑鼠、鍵盤輸入、層級變化等,讓使用者監聽這些事件,在事件回調中進行相應的業務邏輯處理。

在三維場景模型比較多的時候,我們需要考慮如何高效的實作選取操作。官方支援不同的拾取技術實作:

通過屬性和接口擷取滑鼠拾取(Pick)的物體

通過事件擷取滑鼠拾取的物體

區域 Pick 物體

pickedResultFunc設定拾取對象回調函數

官方示例新鮮出爐,可以用代碼塊修改進入層級選擇設定。 回調函數就是一個通過函數指針調用的函數,可通過 pickedResultFunc 設定拾取對象回調函數,示例如下:

ThingJS,3D可視化讓物聯網世界被看見。