为了账号安全,请及时绑定邮箱和手机立即绑定

如何对模型添加事件?

请问老师,如何对模型添加事件?比如点击模型,或者对模型进行拖拽等,谢谢老师

正在回答

1 回答

原理:一般使用射线new THREE.Raycaster()拾取几何对象, 根据鼠标屏幕坐标转化为threejs三维坐标去锁定模型最后在编写你要做的操作。

相关方法使用去官网找文档

给你个大致例子吧

var raycaster = new THREE.Raycaster();   

var mouse = new THREE.Vector2();

window.addEventListener( 'click', ()=>{

// 通过鼠标点的位置和当前相机的矩阵计算出raycaster

let ray = raycaster.setFromCamera(args)

// 获取raycaster直线和所有模型相交的数组集合

let tar =  ray.intersectObjects(args)[0]

//你要进行的操作

...

}, false )


重点来了

官网文档地址:https://threejs.org/docs/index.html#manual/introduction/Creating-a-scene

还有偷懒的方法(官方有封装好的相关库,DragControls.js )和相关demo

去threejs官方文档里搜上面的关键字就行。

如果你再不会那我真的没办法了

http://img1.sycdn.imooc.com//5fcf29cc0001167b08360653.jpg

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
基于WebAR实现3D任务书桌上跳舞
  • 参与学习       6464    人
  • 解答问题       13    个

基于WebAR实现3D任务书桌上跳舞

进入课程

如何对模型添加事件?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信