经管之家App
让优质教育人人可得
立即打开
全部版块
我的主页
›
论坛
›
站务区 十一区
›
新手入门区
从零开始学习3D可视化之场景层级(1)
楼主
森友js
1106
0
收藏
2021-06-10
1、开启场景层级控制
2、父子树和分类对象属性树
3、切换场景层级
在
3D可视化
场景中加载园区后系统会自动创建园区、建筑、楼层、房间等物体对象,这些对象也自然把场景分成了不同的层级,场景提供了层级结构,可以通过我下面介绍的方法,来控制
场景层级
。那么层级结构有什么用呢?可以更方便管理和查询到场景中物体;可以批量操作物体,比如移动父物体可以带着孩子一起移动等等。
1、开启场景层级控制
首先将下面的代码输入到项目文件中,即可开启 ThingJS 3D可视化示例园区的场景层级控制功能。
// 加载ThingJS示例园区var app = new THING.App({ url: 'models/storehouse'})//通过load事件加载园区信息,并开启场景层级控制app.on('load', function(ev) { app.level.change(ev.campus)})
运行项目文件后,在预览窗口,鼠标左键双击3D可视化园区内的建筑,即可进入建筑内部。点击鼠标右键,退出建筑。鼠标左键双击模型(如小车、叉车等),可聚焦到模型,点击鼠标右键,退出聚焦模式。图中所示为鼠标左键双击小车后的聚焦效果。
还有一个方法就是通过场景信息来进入层级切换,工具栏的场景信息对应的就是 CampusBuilder 中搭建的园区的物体(或对象)信息。
场景信息中,显示当前场景的
父子树
和
分类对象属性树
,可按名称、ID以及属性,搜索场景中的对象。点击对象右侧的
定位
按钮,就可以定位到此对象。
2、父子树和分类对象属性树
父子树
和
分类对象属性树
是 ThingJS 提供的两套层级体系,便于管理和查询场景中的物体和批量操作,比如移动父物体时子物体可以一起移动。
父子树层级体系中,通过 children 访问到下层子对象物体,通过 parent 访问到对应的父物体。子物体可以为多个,父物体只能有一个,children 属性是数组(Array)类型。创建一个物体对象时,可以指定该对象的父物体。
分类对象属性树层级体系中,每个父物体可以有多个子物体。ThingJS 为每个物体对象提供了下列内置属性。
buildings: 可以访问到该园区下所有的建筑。
ground: 可以访问到园区的地面对象。
things: 访问所有 Thing 类型的物体。
3、切换场景层级
ThingJS 场景中提供了层级结构,但是如何实现3D可视化场景层级切换呢?可以通过 “父子树” 和 “分类对象属性树” 来批量控制子物体,比如移动、显示或者透明控制等。
在3D可视化场景内只要调用了一次 app.level.change(无论是将层级切换到了园区还是切换到了某个Thing),ThingJS 就启动了内置的 园区<—>建筑<—>楼层<—>物体…… 的逐级进入和退出的交互操作流程和对应的响应。左键双击可进入到所拾取的物体层级,右键单击可返回到上一层级。
从3D可视化园区进入到建筑内,定义为一次 “层级切换” 。学会了如何切换场景层级,下篇文章我继续深入学习如何动态创建组合场景。
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
栏目导航
新手入门区
学术资源/课程/会议/讲座
经管文库(原现金交易版)
宏观经济学
学术道德监督
爱问频道
热门文章
CDA 数据分析师:线性回归实战指南 —— 从 ...
世界上最简单的会计书(高清pdf版)
AI应用新范式:从工具革命到“超级OS”的演 ...
同心动力携手山西金控,共筑金融企业“以人 ...
R语言实战 机器学习与数据分
蔡定创教授、李云庆院长致联合国秘书长古特 ...
2022年北京冬奥会英语观后感【10篇】
R语言预测实战
瓦尔拉斯方程组及其求解历史
一般均衡证明中的关键人物与全 1 解的关联探 ...
推荐文章
AI狂潮席卷学术圈,不会编程也能打造专属智 ...
最快1年拿证,学费不足5W!热门美国人工智能 ...
关于如何利用文献的若干建议
关于学术研究和论文发表的一些建议
关于科研中如何学习基础知识的一些建议 (一 ...
一个自编的经济学建模小案例 --写给授课本科 ...
AI智能体赋能教学改革: 全国AI教育教学应用 ...
2025中国AIoT产业全景图谱报告-406页
关于文献求助的一些建议
几种免费下载文献的方法----我的文献应助经
说点什么
分享
微信
QQ空间
QQ
微博
扫码加好友,拉您进群
各岗位、行业、专业交流群