使用 Three.js 获取两个 3d 向量之间的方向?
Posted
技术标签:
【中文标题】使用 Three.js 获取两个 3d 向量之间的方向?【英文标题】:Get direction between two 3d vectors using Three.js? 【发布时间】:2017-03-22 04:47:07 【问题描述】:我有两点:
v1 = (0, 0, 0);
v2 = (10, 4, -3);
我想知道这两点之间的方向,这样我就可以从点 v1 投射到 v2。
我该怎么做?
【问题讨论】:
【参考方案1】:创建从v1
到v2
的方向向量的模式如下:
var dir = new THREE.Vector3(); // create once an reuse it
...
dir.subVectors( v2, v1 ).normalize();
three.js 中的方向向量假定具有单位长度。换句话说,它们必须被标准化。如果您在光线投射时使用的方向向量的长度不等于 1,您将无法获得准确的结果。
three.js r.82
【讨论】:
【参考方案2】:一点点数学:方向 = v2 - v1
另外,还有一点 ThreeJS 的文档:https://threejs.org/docs/#api/math/Vector3
安德...帕夫!解决方案!
var direction = new THREE.Vector3();
direction.subVectors( v2, v1 ) ;
【讨论】:
啊哈!就这么容易。谢谢,我会试试这个。以上是关于使用 Three.js 获取两个 3d 向量之间的方向?的主要内容,如果未能解决你的问题,请参考以下文章