从零开始学习3D可视化之物体选择

本文介绍了在数字孪生可视化场景中实现物体选择的三种方法:1) 使用 Selection 模块接口;2) 通过属性和方法侦测选择集变化;3) 利用事件监听选择集变化。并提供了颜色区分法作为实现交互的示例。
摘要由CSDN通过智能技术生成

1、选择物体

2、通过属性和方法,侦测选择集变化

3、通过事件侦测选择集变化

搭建好数字孪生可视化场景后,应该如何进行交互?这其中最关键的就是如何实现物体的选择。比如鼠标点击后判断是否选中了某个模型或模型的某个部分。在数字孪生可视化场景中鼠标悬停到物体上,并不代表已经选择了这个物体,需要点击后才表示选择了它。

1、选择物体

选择数字孪生可视化场景中的物体,可以通过 Selection 模块实现,通过 app.selection 的接口实现该功能。选择集是被封装到抽象Selection中的DOM元素的有序集合。一般来说,通过对全局数字孪生可视化对象调用选择集方法从而获得最初的选择集实例。然后,你就可以在Selection实例上调用自带的方法来创建它的子集了。

见下例:

//将物体加入到选择集中
app.selection.select(obj);
// 判断对象是否在选择集中
 app.selection.has(obj);
//将物体从选择集中删除
app.selection.deselect(obj);
//清空选择集
app.selection.clear();

 

2、通过属性和方法,侦测选择集变化

通过平台提供的属性和方法,可以侦测选择集变化。Selection 通过提供 isChanged 方法获取选择集变化,通过 objects 和 previousObjects 获取当前选择集和变化之前的选择集。

if(app.selection.isChanged()) {
    //获取当前哪些物体被选择
    console.log(app.selection.objects);
    //当isChanged时,之前都有那些物体被选择
    console.log(app.selection.previousObjects
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值