【问题背景】想咨询一下操作集中【存储变量】,X3版本叫【存储单元】这个功能是如何使用的呢?
存储变量,其实是作为一个中间桥梁,达到了原子间数据的传输作用。产品手册中对于存储变量的定义如下:
存储变量是用来将孪生体或参数值存储起来在操作原子配置项中使用或重复引用。存储孪生体是用来指定操作原子动作的运行对象,存储参数值是用来填写操作原子配置项参数。
X4版本:
X3版本:
【问题方案】
下面以X4版本为例子,演示讲解一下存储变量这个功能的使用方法。
案例1:点击任何一个建筑,全部建筑都变色。
配置步骤:
1-配置操作集【建筑变色】,需要用到【依据条件获取孪生体】和【孪生体颜色】这两个原子,添加存储变量【建筑】。
2-根据ThingJS语法 [twinType=建筑] 筛选所有建筑,新建一个存储变量“建筑”拖至原子1的存储对象中,代表将建筑集合设为存储变量“建筑”便于后续操作原子使用。然后将存储变量拖至原子2的运行对象中,作为“孪生体显示颜色”这个动作的执行者。
3-给建筑集合配置事件,选择【选中孪生体】,操作集选择【建筑变色】。
4-最终展示效果。
案例2:点击小车,小车接受到位置监控数据,进行相应的位移移动。
1-配置操作集【小车移动】,用到了【开启监控】【属性判断】【获取孪生体属性】【孪生体位移】四个操作原子,设置【小车位置】的存储变量,具体配置如下。
2-给【小车01】集合配置选中孪生体事件,操作集选择【小车移动】。
3-postman推送监控数据。
4-最终效果展示。
*【关于存储变量中默认值的使用】
默认值是存储变量默认生效的值,可根据原子中字段需要的数据格式进行对应的填写。
案例3:进入系统,弹出默认的消息提示 hello world 。
1-配置操作集【园区消息提示】,使用操作原子【消息提示】,新增存储变量【提示语】,设置默认值【hello world】。
2-配置系统事件-系统加载,选择操作集园区【园区消息提示】。
3-最终展示效果。
案例4:点击小人,小人移动到默认位置。
1-配置操作集【人员移动】,使用【孪生体位置】的操作原子,这个地方我们设置存储变量【位置】,并且把从场景中点位拾取到的坐标点的值,填写入存储变量的默认值中,然后把存储变量拖入到位置坐标中即可。(这里默认值放的位置坐标,因为需要的是位置信息,所以默认值就填写需要的位置坐标的格式)
2-给【工作人员01】配置选中孪生体的事件,然后选择人员移动的操作集。
3-最终效果展示。
您还可以参考官方文档进行进一步的学习:https://wiki.uino.com/book/62c5246550c3897ba43509a0/62c562102bd2f57fbd1bb803.html#%E5%AD%98%E5%82%A8%E5%8F%98%E9%87%8F
X4技巧库课程-操作集使用案例:https://study.thingjs.com/stage/80?from=inner