为什么你没有通过适应例子成功?发生什么错误?你的意思是this的例子? 因为raycaster和投影仪是你正在寻找的方式。
首先,您需要一个eventListener,用于容器上的ondblclick事件。在活动功能,您可以从链接的例子复制&粘贴:
1)保存鼠标坐标
mouse.x = (event.clientX/window.innerWidth) * 2 - 1;
mouse.y = - (event.clientY/window.innerHeight) * 2 + 1;
2)项目通过摄像机坐标到世界体系,并创建一个射线
var vector = new THREE.Vector3(mouse.x, mouse.y, 1);
projector.unprojectVector(vector, camera);
raycaster.set(camera.position, vector.sub(camera.position).normalize());
3)检查双击元素是否是你的星球
var intersects = raycaster.intersectObject("your_planet");
if (intersects.length > 0) {
reset your camera
}
希望这有助于!