希望在网页上显示的 .obj 文件上有单击事件
Want to have click event on the .obj file shown on the webpage
我在网页上有一个使用Three js的.obj文件。我的目标是,当我向左/向右拖动鼠标时,OBJ 模型应该旋转,我可以使用三个来做到这一点。轨迹球控件()。接下来,我想谈谈该 OBJ 模型上的特定点,如果鼠标按下这些点,就会发生一些事情(例如将在网页上显示的计数器增加)。我已经看过三个 js 的 DOMevents,但看起来它允许我们单击整个对象而不是对象上的特定点。我怎样才能做到这一点?
你必须创建一个光线投射器。(R69)
mouse_vector = new THREE.Vector3(),
mouse = { x: 0, y: 0, z: 1 };
var vector = new THREE.Vector3();
var raycaster = new THREE.Raycaster();
var dir = new THREE.Vector3();
function onMouseDown( event_info )
{
event_info.preventDefault();
mouse.x = ( event_info.clientX / window.innerWidth ) * 2 - 1;
mouse.y = - ( event_info.clientY / window.innerHeight ) * 2 + 1;
mouse_vector.set( mouse.x, mouse.y, mouse.z );
mouse_vector.unproject(camera);
var direction = mouse_vector.sub( camera.position ).normalize();
ray = new THREE.Raycaster( camera.position, direction );
ray.set( camera.position, direction );
intersects = ray.intersectObjects(scene.children, true);
if( intersects.length )
{
intersects.forEach(function(clicked)
{
// Your stuff like
if (clicked.object.typ == 'yourObject')
{
//Event on click..
}
});
}
}
相关文章:
- 在单击href链接的同时下载文件
- 单击按钮更改加载到表中的JSON文件
- 在Node Webkit应用程序中从DOM单击按钮时运行批处理文件
- 打开'选择文件'窗口单击锚链接(跳过单击'选择文件'按钮)
- 创建一个HTML文件,该文件使用DOM在用户每次单击按钮时交换两段内容
- 如何在单击按钮时编辑文件的内容?PHP
- 在播放完成之前再次单击播放音频文件
- 选择文件(表单提交)后无法单击“取消”按钮
- Javascript 单击html字段值而不编辑.js文件
- 我想通过单击按钮将 2 个 php 文件链接在一起
- 通过 NG 单击选择文件或文本区域数据
- Javascript不起作用,但当放置断点并从chrome调试器工具中单击文件时,它可以正常工作
- Javascript自动播放声音文件,单击其中一个按钮时停止
- 单击跨度内的隐藏文件输入会导致RangeError
- 单击页面中的任何按钮时,使用Jquery file Upload时都会打开文件对话框
- 文件上传don'单击链接按钮时无法打开
- 单击按钮时使用JS读取JSON文件
- 如何在单选按钮上更新XML文件单击(客户端)c# Web应用程序
- 代码不能很好地执行PHP文件单击一个按钮
- <输入类型=“文件” /单击“取消”时>更改属性