三.js交叉光线投射器
Three.js intersection raycaster
我创建了一些几何图形和一些函数来移动和检测它。 它工作得很好,但现在我已经 http://dhtmlx.com/地将其插入到javascript UI库中,并且效果不佳。问题是这样的:例如,使用光线投射器,当几何图形不在鼠标下方时,它也会找到与几何体的交集。看起来所有几何图形都从原始位置向上移动,绘制是假的。
我在这个网址中做了一个例子:http://www.felpone.netsons.org/web-threejs%20-%20Copia/contact_manager/prova2.html。您可以在控制台中查看完整的代码。
正如您在实时示例中所看到的,如果您单击立方体上方,您也可以拖动立方体。
我认为
这是因为鼠标坐标是文档坐标,而不是画布中的坐标。
在我的应用程序中,我确定光线的正确坐标,如下所示:
var mouseX = event.clientX - myCanvas.offsetLeft;
var mouseY = event.clientY - myCanvas.offsetTop;
var mouseXForRay = (mouseX / this.canvas.width) * 2 - 1;
var mouseYForRay = -(mouseY / this.canvas.height) * 2 + 1;
相关文章:
- 光线投射从内部投射时不会碰到网格
- 无法与光线投射器保持距离
- 在BufferGeometry上识别光线投射交点的面
- 三.光线投射器在缩放的 THREE 中无法正常工作.精灵
- 基于网格的环境中的 2D 光线投射
- ThreeJS光线投射器关闭,相机和对象坐标大于1000000
- 三.js使用光线投射优化碰撞检测
- 三.js光线投射器没有选择正确的对象
- 请解释三个.js光线投射器方向参数
- 第三.js自定义几何体光线投射器捕获了错误的对象
- 三.js交叉光线投射器
- 三.js 光线投射器在翻页时偏移
- 使用动画选择Three.js光线投射对象
- Three.js:具有BufferGeometry的直线上的光线投射交点
- Three.js光线投射器交叉口
- Three.js光线投射和将对象放置在平面上方不起作用
- js鼠标事件与光线投射和相交测试
- THREE.JS光线投射器和JS对象而不是网格
- js光线投射从鼠标位置
- 如何用HTML元素阻止THREE.js光线投射?