Javascript 三个JS项目矢量3到屏幕
我正在尝试制作一个模型,您可以在其中选择面(并且它们会改变颜色/与模型分离)。我现在要做的是从我选择的脸上获得一个垂直,并将这些坐标投影到屏幕上。我已经搜索过了,但是我发现的大多数问题都使用了不推荐的函数。我确实意识到这个问题看起来像是重复的,但我还没有找到任何解决我问题的方法。 我试图使用3.Vector3中的项目函数,但我得到的坐标总是错误的 这是我正在使用的代码的相关部分:Javascript 三个JS项目矢量3到屏幕,javascript,3d,three.js,Javascript,3d,Three.js,我正在尝试制作一个模型,您可以在其中选择面(并且它们会改变颜色/与模型分离)。我现在要做的是从我选择的脸上获得一个垂直,并将这些坐标投影到屏幕上。我已经搜索过了,但是我发现的大多数问题都使用了不推荐的函数。我确实意识到这个问题看起来像是重复的,但我还没有找到任何解决我问题的方法。 我试图使用3.Vector3中的项目函数,但我得到的坐标总是错误的 这是我正在使用的代码的相关部分: var startPoint = mesh.geometry.vertices[selectedPoly.a].cl
var startPoint = mesh.geometry.vertices[selectedPoly.a].clone();
startPoint.project(camera);
startPoint.x = (startPoint.x + 1) / 2 * window.innerWidth;
startPoint.y = ( -startPoint.y - 1) / 2 * window.innerHeight;
我只是想改变我在3d空间中点击鼠标的方式。我可能做错了什么。你能帮我一下吗?检查一下,或者我两个都看过了,但都不起作用。我得到的坐标相差很远。请尝试调用
startPoint.applyMatrix4(mesh.matrixWorld)在调用project()
之前执行code>。这确实有效。如果你想给出一个解释理由的答案,我很乐意接受