| | |
| | | } |
| | | |
| | | initRaycaster = () => { |
| | | let that = this; |
| | | const raycaster = new THREE.Raycaster(); |
| | | const mouse = new THREE.Vector2(); |
| | | this.handleClickEvent = (event) => { |
| | |
| | | mouse.x = ((x - rect.left) / rect.width) * 2 - 1; |
| | | mouse.y = -((y - rect.top) / rect.height) * 2 + 1; |
| | | event.preventDefault(); |
| | | raycaster.setFromCamera(mouse, that.camera); |
| | | let intersects = raycaster.intersectObjects(that.objects, true); |
| | | raycaster.setFromCamera(mouse, this.camera); |
| | | let intersects = raycaster.intersectObjects(this.objects, true); |
| | | if (intersects.length === 0) { |
| | | this.outlinePass.selectedObjects = []; |
| | | return; |