请选择 进入手机版 | 继续访问电脑版
2021ThingJS数字孪生智慧场景可视化开发大赛获奖者专访
查看: 499|回复: 0

从零起头进修3D可视化之事务卸载、事务停息

[复制链接]
avatar

40

主题

40

帖子

283

积分

中级会员

Rank: 3Rank: 3

积分
283
ico_lz  楼主| 发表于 2021-7-2 10:56:55 | 显示全部楼层 |阅读模式
事务就是用户或阅读器本身履行的某种行动,而响应某个事务的函数就叫干事务处置法式 (或事务侦听器)。事务处置法式的名字以 "on" 开首,比如 click 事务的事务处置法式就是 onclick。下面我将继续进修数字孪生可视化场景中若何卸载事务、停息和规复事务、自界说事务。

从零起头进修3D可视化之事务卸载、事务停息



卸载事务
假如内存中保存大量无用的事务处置法式,会影响性能。所以一定要在不需要的时辰实时移除事务处置法式。需要卸载一个事务的时辰利用 off() 方式。这样就把一切的数字孪生可视化building 下的 click 事务都断根了。假定这个数字孪生可视化物体有多个 marker,找到其中一个卸载掉事务,不影响其他 marker和后建立的 marker。

  1. app.on("click", function(event) {
  2. console.log("you click!");
  3. });

  4. // 卸载
  5. app.off("click");

  6. app.on("click", ".Building", function(event) {
  7. console.log("you click!");
  8. });

  9. // 卸载
  10. app.off("click", ".Building");

  11. app.on("click",".Building",function(event) {
  12. console.log("you click 1 !");
  13. },"tag1");

  14. // 卸载
  15. app.off("click", ".Building", "tag1");
复制代码


留意事项:

若绑定数字孪生可视化事务时,增加了条件,则off 第二个参数必须传条件,假如没有条件,又需要传tag ,需要将条件传 null。

停息和规复事务
假如off掉一个事务,要想规复,偶然辰比力难,就会找不到之前的回调方式了。面临这类情况,供给 pauseEvent方式,用于停息事务,它的控制方式和标准类似于 off。

  1. app.on("click",".Building",function(event) {
  2. console.log("you click!");
  3. },"tag1");

  4. // 停息
  5. app.pauseEvent("click", ".Building", "tag1");

  6. // 规复
  7. app.resumeEvent("click", ".Building", "tag1");
复制代码


自界说事务
ThingJS 内置了很多事务,但假如自己写模块的时辰,也需要触发事务,该若何操纵?内部注册还是利用 on,在需要触发的地方可以利用 trigger 接口来对外触发事务。

比如在写一个数字孪生可视化报警治理器:

  1. class AlamrManager {
  2. constructor() {
  3. ......
  4. }

  5. enable() {
  6. ......
  7. app.trigger("AlarmEnable")
  8. ......
  9. }

  10. setObjAlarm(obj, alarmLevel) {
  11. ......
  12. obj.trigger("alarm", {"level":alarmLevel} )
  13. ......
  14. }
  15. }
复制代码


内部注册以下:

  1. app.on("AlarmEnable", function(ev){
  2. ......
  3. })

  4. app.query(".Thing").on("alarm",function(ev){
  5. if(ev.level == "critical"){
  6. ......
  7. }
  8. ......
  9. })
复制代码


—————————————————

数字孪生可视化:https://www.thingjs.com/


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则