BIM手记(3) mousemove

博客给出两段代码,第一段为viewer鼠标移动事件代码,通过hitTest函数获取鼠标位置构建id,若存在则进行节点选择操作;第二段代码利用双重循环遍历特定区域,使用hitTest获取节点信息并存储在Map中,最后遍历Map进行节点选择。

viewer.canvas.onmousemove=function(e,a){
  var theNode=viewer.impl.hitTest(e.x,e.y,false);//这个函数的作用就是获取鼠标位置的构建id(dbId)
  if(theNode)
  {
     //viewer.clearSelection();
     viewer.toggleSelect(theNode.dbId);
  }
};

var theMap=new Map();
for(var x=200;x<600;x=x+3)
{
   for(var y=200;y<600;y=y+3)
   {
      var theNode = viewer.impl.hitTest(x,y,true);
      if(theNode)
      {
         theMap.set(theNode.dbId,theNode.model);
      }
   }
}
theMap.forEach(function(sender,key,val){viewer.toggleSelect(key);}); 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值