VUE2+THREE.JS点击事件

THREE.JS点击事件

  • 1.增加监听点击事件
  • 2.点击事件实现
  • 3.记得关闭页面时 销毁此监听事件

1.增加监听点击事件

renderer.domElement.addEventListener("click", this.onClick, false);
注:初始化render时监听
在这里插入图片描述

2.点击事件实现

onClick(event) {const raycaster = new THREE.Raycaster();const mouse = new THREE.Vector2();// 计算鼠标或触摸点的位置mouse.x = (event.clientX / this.$refs.draw.offsetWidth) * 2 - 1;mouse.y = -(event.clientY / this.$refs.draw.offsetHeight) * 2 + 1;// 更新射线   注意——> camera 是相机   定义到data里的raycaster.setFromCamera(mouse, camera);// 计算与所有对象的交点const intersects = raycaster.intersectObjects(scene.children, true);if (intersects.length > 0) {//可以打印一下,intersects[0].object 是点击的设备模型信息		}
},

3.记得关闭页面时 销毁此监听事件

renderer.domElement.addEventListener("click", null, false); //remove listener to render