Thingjs 开门示例:以3D机柜为例 演示thingjs如何开门

简介: 动画的播放和暂停是3D场景中常用的功能,本文以机柜为例为您讲解在thingjs中使用playAnimation(params)接口控制机柜门开启和关闭,同理,房门开关、电器运行停止等3D模型的动画启停均可以使用此方法。

动画的播放和暂停是3D场景中常用的功能,本文以机柜为例为您讲解在thingjs中使用playAnimation(params)接口控制机柜门开启和关闭,同理,房门开关、电器运行停止等3D模型的动画启停均可以使用此方法。

用到的Thingjs API:

播放动画

playAnimation(params)

参数

 

Name Type Description
name String

动画名

frames? Array

帧播放比例范围

speed? Number

播放速度

loop? Boolean

是否循环

loopType? String

循环类型

reverse? Boolean

是否倒播

Example

obj.playAnimation('open1');
obj.playAnimation({
     name: 'open1',
     reverse: true,
});
obj.playAnimation({
     name: 'open1',
     loop: true
});
obj.playAnimation({
     name: ['open1', 'open2'],
     loop: true,
     loopType: 'pingpong',
     speed: 0.4
});
obj.playAnimation({
     name: ['open1'],
     frames: [0.25, 0.5], // 动画序列从 25% 播放到 50% (时间)
     loop: true,
     loopType: 'pingpong',
     speed: 0.4
});

机柜示例

//加载场景代码
var app = new THING.App({ 
    // 场景地址
    "url": "http://www.thingjs.com/./uploads/wechat/oLX7p04daC2OdoZCbP6VihD_0XCo/scene/men",
    //背景设置
    "skyBox" :"BlueSky"
});

var l = null;
// 初始化完成后进行场景层次管理注册操作
app.on('load', function (ev) {
    app.level.change(app.buildings[2]);
    var cabinet = app.query(/001/)
    cabinet.on('click',function() {
      if (l) l.playAnimation('close1');
      this.playAnimation('open1');
        l = this;
    });
});

 

ThingJS ™(www.thingjs.com):优锘科技开发的面向物联网的 3D 可视化 PaaS 开发平台.基于 WebGL 兼容各种浏览器及移动设备.零门槛、高效率、低成本开发各类 3D 应用。

目录
相关文章
|
缓存 图形学
游戏通用解决方案之红点设计
游戏通用解决方案之红点设计
531 0
|
4月前
|
UED
软件开发常见流程,好的用户体验,智能引导助手,介绍软件相关操作,会画个键盘,对键盘的相关键进行标注,效果动态展示图怎样画????弄一个图标,相关介绍
软件开发常见流程,好的用户体验,智能引导助手,介绍软件相关操作,会画个键盘,对键盘的相关键进行标注,效果动态展示图怎样画????弄一个图标,相关介绍
|
1天前
|
算法 5G 定位技术
室内导航怎么实现?解决方案与案例分享
本文探讨了室内导航的实现原理、关键技术、用户体验优化及未来发展趋势。通过Wi-Fi定位、蓝牙Beacon、UWB和视觉SLAM等多种技术,结合高精度地图绘制和路径规划算法,实现室内AR导航及定位导航。文章还介绍了性化服务和成功案例,展望了5G、物联网和AI等技术在室内导航中的应用前景。
11 0
|
3月前
|
开发者 图形学 Java
Unity物理引擎深度揭秘:从刚体碰撞到软体模拟,全面解析实现复杂物理交互的技巧与秘诀,助你打造超真实游戏体验
【8月更文挑战第31天】物理模拟在游戏开发中至关重要,可让虚拟世界更真实。Unity作为强大的跨平台游戏引擎,内置物理系统,支持从刚体碰撞到布料模拟的多种功能。通过添加Rigidbody组件,可实现物体受力和碰撞;使用AddForce()施加力;通过关节(如Fixed Joint)连接刚体以模拟复杂结构。Unity还支持软体物理,如布料和绳索模拟,进一步增强场景丰富度。掌握这些技术,可大幅提升游戏的真实感和玩家体验。
96 0
|
5月前
|
定位技术 C++ Windows
第一人称射击游戏 C++控制台版(未完成)
第一人称射击游戏 C++控制台版(未完成)
第一人称射击游戏 C++控制台版(未完成)
|
6月前
|
vr&ar C# 图形学
【Unity 3D】VR飞机拆装后零件说明功能案例实战(附源码和演示视频 超详细)
【Unity 3D】VR飞机拆装后零件说明功能案例实战(附源码和演示视频 超详细)
91 0
|
6月前
|
vr&ar C# 图形学
【Unity 3D】VR飞机动态拆装及引擎开关控制案例(附源码和演示视频 超详细)
【Unity 3D】VR飞机动态拆装及引擎开关控制案例(附源码和演示视频 超详细)
106 0
|
算法 编译器
开源:智能宠物弹射喂食器连载贴之步进电机控制(二)
开源:智能宠物弹射喂食器连载贴之步进电机控制(二)
231 0
|
存储 数据采集 JavaScript
手把手教你做出数据可视化项目(四)动态模拟航班飞行路线
手把手教你做出数据可视化项目(四)动态模拟航班飞行路线
314 0
|
Java
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏03全屏显示游戏窗口
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏03全屏显示游戏窗口
156 0
下一篇
无影云桌面