博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于HTML5实现3D监控应用流动效果
阅读量:6219 次
发布时间:2019-06-21

本文共 1114 字,大约阅读时间需要 3 分钟。

流动效果在3D领域有着广泛的应用场景,如上图中医学领域可通过3D的流动直观的观察人体血液的流动,燃气领域可用于监控管道内流动的液体或气体的流向、流速和温度等指标。

 

如今企业数据中心机房普遍面临着设备散热的问题,采用冷热通道方案可大大提高数据中心的散热能力,充分有效利用机柜和机房的空间,因此在电信的3D机房监控领域,也常需要借助流动的效果,对机房冷热通道系统进行监控。

的作为3D客户端呈现解决方案,今天介绍的重点不在于采集这些指标,而在于如何应用HT的预定于3D元素来实现流动的效果。在《》这篇介绍的基于的动画,是通过改变模型的位置方向来实现动画,而本文要介绍的方案则是保持模型位置方向不动,而是通过控制模型的贴图参数uvScale和uvOffset实现流动的控制,这样实现的好处是没有增加过多的3D图元模型,同时可借助2D的图片融合到3D进行呈现,毕竟美工改变2D图片,或程序员内存中动态改变2D图片,都会比动态改变3D模型来的容易且轻量。

该例子主要应用了ht.Shape类型对象,该对象在中呈现了多边形的效果,而该模型在中则常用于绘制墙面、管道等三维模型对象,在《》中有如下的例子,其实已经体现了ht.Shape可作为墙面和管道并且可以贴图的效果,我们只需要动态改变uvOffset参数即可让3D物体流动起来。

整个例子我们仅仅用了上图的一个箭头图片,通过uvScale可设置平铺的效果,通过设置’front.uv’: [0,1, 1,1, 1,0, 0,0]我们可以改变箭头的方向,最后实现动画仅仅是这样一行代码offset = 0;setInterval(function(){offset += 0.1;shape.s(‘front.uv.offset’, [offset, 0]});}, 100);你可以再修改动画间隔,或者offset每次步进,这样就可以控制流动的快慢,同时我们通过改变’shape3d.blend’: ‘red’可动态改变箭头图片的渲染颜色,这样无需美工提供多种图片,我们甚至可以根据温度值等指标动态改变箭头颜色。

该例子左下角摆放了的2D拓扑图,2D和3D共同绑定的数据模型,因此可随意操作2D拓扑或3D引擎上的图形组件,你会发现他们会自动联动,任何一处的改变会同时在另一个组件上实时呈现改变效果,这也是HT所有组件可绑定同一数据模型的设计模式带来的好处:

以下是段操作中供参考,基于预定义的模型还有很多自定义效果,大家可以发挥想象力让3D的流动效果发挥出更多不可思议的应用场景效果:

转载于:https://www.cnblogs.com/xhload3d/p/4870130.html

你可能感兴趣的文章
easyui datagrid 分页 客户分页
查看>>
ogg概叙、架构、进程
查看>>
建造者模式的使用场景
查看>>
java基本类型
查看>>
iReport报表生成html,pdf,xls,word工具类
查看>>
转一篇关于部署的文章
查看>>
cvc-complex-type.2.4.c 如何解决
查看>>
如何优化VMWare虚拟机的运行速度(转)
查看>>
UVALive2362 POJ1004 HDU1064 ZOJ1048 Financial Management【数学计算】
查看>>
UITableView解析
查看>>
[sas]Missing Value
查看>>
每日一博 | 用 Ionic2 创建 App 启动页滑动欢迎界面
查看>>
Android自动在线升级
查看>>
windows 系统安装git的方法
查看>>
java多线程简单demo
查看>>
2.第一个MVC程序
查看>>
堆排序的Python实现
查看>>
第四回 基类中的修饰符,应该根据你对架构的理解去定义它们,没有绝对的
查看>>
跨域实现IFRAME自适应高度~续(终级)
查看>>
Flask-SQLAlchemy基本操作
查看>>