首页 > 其他分享 >three.js获取点击的对象及坐标

three.js获取点击的对象及坐标

时间:2024-11-20 14:07:51浏览次数:1  
标签:raycaster 鼠标 point three js 点击 var mouse event

            // 监听鼠标点击事件
            document.addEventListener('click', function (event) {
                // 创建一个射线投射器
                var raycaster = new THREE.Raycaster();

                // 鼠标位置
                var mouse = new THREE.Vector2();
                //event.preventDefault();
                // 将鼠标位置转换为有意义的数据
                mouse.x = (event.clientX / renderer.domElement.clientWidth) * 2 - 1;
                mouse.y = - (event.clientY / renderer.domElement.clientHeight) * 2 + 1;

                // 使用鼠标位置更新射线投射器
                raycaster.setFromCamera(mouse, camera);

                // 计算物体和射线的交点
                var intersects = raycaster.intersectObjects(scene.children, true);

                // 如果存在交点
                debugger
                if (intersects.length > 0) {
                    // 获取第一个交点的3D坐标
                    var point = intersects[0].point;
                    console.log('3D Coordinates of the clicked point:', point.x, point.y, point.z);
                }
            }, false);

标签:raycaster,鼠标,point,three,js,点击,var,mouse,event
From: https://www.cnblogs.com/duixue/p/18556747

相关文章

  • 基于Java+SSM+JSP高校校园点餐订餐系统(源码+LW+调试文档+讲解等)/高校食堂订餐/校园
    博主介绍......
  • 杰盛微 JSM6288系列 1.5A 250V三相桥高低侧同相栅极驱动芯片 TSSOP20、QFN24封装
    JSM6288系列 1.5A250V三相桥高低侧同相栅极驱动芯片 JSM6288是一款高压、高速功率MOSFET高低侧驱动芯片,采用高低压兼容工艺使得高低侧栅驱动电路可以单芯片集成,具有独立的高侧和低侧参考输出通道。JSM6288逻辑输入电平兼容低至3.3V的CMOS或LSTTL逻辑输出电平,输出具有大电......
  • PI发布rest,json接口
    PI接口的开发分成两个部分,第一个部分是ESB(EnterpriseServicesBuilder)部分,这里注意做数据结构定义,接口导入,字段关系映射,定义接口等。                        第二部分是IB(IntegrationBuilder)部分,这里主要做管道定义,服务......
  • 【Java】对象和JSON字符串之间的转换 全网最清晰!
    在Java中,将对象转换为JSON字符串通常使用一些流行的JSON库,如Jackson或Gson。这两个库都非常强大,支持将Java对象转换为JSON字符串,也支持反向操作。接下来我会介绍一个基于Jackson的工具类,它可以非常方便地实现Java对象和 JSON字符串之间的相互转换。1.引......
  • RedisTemplate RedisConfig 序列化方式 fastjson2
    SpringDataRedis为我们提供了下面的Serializer:GenericToStringSerializer、Jackson2JsonRedisSerializer、JacksonJsonRedisSerializer、JdkSerializationRedisSerializer、OxmSerializer、StringRedisSerializer。序列化方式对比:JdkSerializationRedisSerializer:使用JDK......
  • Vue.js组件开发指南
    Vue.js组件开发涵盖多方面内容。从基础层面看,组件作为可复用的Vue实例,能通过多种方式注册,其props用于接收外部数据、data需为函数以保障数据独立。生命周期的各个钩子函数在组件不同阶段发挥作用。组件通信包括父子间的特定方式和非父子间利用事件总线。样式方面有作用域样......
  • arcgis api 3.x for js 入门开发系列十叠加 SHP 图层(附源码下载)
    前言关于本篇功能实现用到的api涉及类看不懂的,请参照esri官网的arcgisapi3.xforjs:esri官网api,里面详细的介绍arcgisapi3.x各个类的介绍,还有就是在线例子:esri官网在线例子,这个也是学习arcgisapi3.x的好素材。内容概览基于arcgisapi3.x叠加SHP......
  • arcgis api 3.x for js 入门开发系列十四最近设施点路径分析(附源码下载)
    前言关于本篇功能实现用到的api涉及类看不懂的,请参照esri官网的arcgisapi3.xforjs:esri官网api,里面详细的介绍arcgisapi3.x各个类的介绍,还有就是在线例子:esri官网在线例子,这个也是学习arcgisapi3.x的好素材。内容概览基于arcgisapi3.x实现最近设......
  • 圣诞老人html-css和js没发奥
    <!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>Jinglebellsrock!</title><linkrel="stylesheet"href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.......
  • osg三维场景中拾取鼠标在模型表面的点击点
    osg三维场景中拾取鼠标在模型表面的点击点 #include<osg/Group>#include<osg/Geode>#include<osg/ShapeDrawable>#include<osgDB/ReadFile>#include<osgViewer/Viewer>#include<osgGA/GUIEventHandler>#include<osgGA/TrackballManipula......