在物聯網領域,Thing都有哪些動效呢?調用ThingJS API看看。
對于 Thing 類的對象,是通過 url 加載的模型,很多模型在制作階段就内置了動畫。
如果模型有内置動畫,則可以在 ThingJS 中利用 API 調用播放這些動畫。
如果是動态建立的物體,由于模型加載是異步的,則必須在模型加載完成後才能調用動畫。
1. 擷取模型動畫
首先我們通過 animationNames 屬性擷取上圖中的模型都有什麼動畫。
示例:
輸出:
-
播放模型動畫
我們使用 playAnimation 接口進行動畫播放。
• 簡單點傳播放動畫
name: "animation",
reverse: true//反轉數組
});
• 可以反向播放動畫
obj.playAnimation("animation");
• 可以循環播放動畫,并且可以同 loopType ,來控制循環類型
obj.playAnimation({
name: "open1",
loopType: THING.LoopType.Repeat
});
• 還可以同時播放多個動畫;
name: ["open1", "open2"],
loopType: THING.LoopType.PingPong,
speed: 0.4
});
-
停止播放模型動畫
我們使用 stopAnimation 接口來停止動畫播放
`
//當物體帶有多個動畫時,
stopAnimation
接口将會停止所有動畫播放
obj.stopAnimation();
//指定停止哪個動畫
obj.stopAnimation("open1");
### 官方模型動畫介紹
我們有提供各個行業的模型供使用者選擇,這些模型有部分在制作階段就内置了動畫。例如:
倉儲
以下面的糧倉為例:
在CamBuilder中我們可以通過選中該模型,檢視模型是否帶有動畫,例如這個糧倉動畫名為‘CloseRoof’和‘OpenRoof’,分别控制糧倉開蓋關蓋動畫。
![](https://img2020.cnblogs.com/blog/1494719/202008/1494719-20200828181710705-691213668.png)